/* 星の子手帳 Core — theme addon */
.sky-auth-shell,
.sky-dashboard {
  --sky-ink: var(--text-color, #2d3854);
  --sky-deep: var(--main-color, #1f3c88);
  --sky-accent: var(--accent, #62b4ff);
  --sky-gold: var(--gold, #f5e6b3);
  --sky-paper: #fbfcfd;
  --sky-line: rgba(55, 76, 105, .14);
  --sky-muted: #7b879a;
  --sky-shadow: 0 24px 70px rgba(31, 60, 90, .08);
  color: var(--sky-ink);
  box-sizing: border-box;
}
.sky-auth-shell *, .sky-dashboard * { box-sizing: border-box; }
.sky-eyebrow { margin: 0 0 .35rem; color: var(--sky-muted); font-size: .69rem; font-weight: 700; letter-spacing: .18em; line-height: 1.4; }

.sky-auth-shell { min-height: 70vh; display: grid; place-items: center; padding: 48px 18px; }
.sky-auth-card { position: relative; width: min(100%, 430px); overflow: hidden; padding: 42px 42px 34px; background: rgba(253,254,255,.96); border: 1px solid var(--sky-line); border-radius: 24px; box-shadow: var(--sky-shadow); }
.sky-auth-card::before { content: ''; position: absolute; top: 0; left: 42px; right: 42px; height: 1px; background: linear-gradient(90deg, transparent, rgba(194,157,77,.62), transparent); }
.sky-auth-heading { text-align: center; margin-bottom: 28px; }
.sky-auth-mark { display: grid; place-items: center; width: 42px; height: 42px; margin: 0 auto 13px; border: 1px solid rgba(194,157,77,.35); border-radius: 50%; color: #b3914d; font-size: 14px; }
.sky-auth-heading h2, .sky-auth-card--message h2 { margin: 0; color: var(--sky-deep); font-size: clamp(1.45rem, 4vw, 1.85rem); letter-spacing: .04em; }
.sky-auth-heading > p:last-child, .sky-auth-card--message > p { margin: 7px 0 0; color: var(--sky-muted); font-size: .9rem; }
.sky-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 0 0 26px; border-bottom: 1px solid var(--sky-line); }
.sky-auth-tab { appearance: none; position: relative; padding: 11px 6px 12px; border: 0; background: transparent !important; color: var(--sky-muted) !important; font-size: .88rem !important; box-shadow: none !important; border-radius: 0 !important; cursor: pointer; }
.sky-auth-tab::after { content: ''; position: absolute; left: 28%; right: 28%; bottom: -1px; height: 2px; background: transparent; }
.sky-auth-tab.is-active { color: var(--sky-deep) !important; font-weight: 700; }
.sky-auth-tab.is-active::after { background: #b3914d; }
.sky-auth-body { min-height: 278px; }
.sky-auth-form { display: none; }
.sky-auth-form.is-active { display: block; animation: skyFade .2s ease; }
@keyframes skyFade { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: none; } }
.sky-auth-form label, .sky-profile-editor label { display: block; margin-bottom: 17px; color: var(--sky-deep); font-size: .78rem; font-weight: 700; letter-spacing: .025em; }
.sky-auth-form input, .sky-profile-editor input, .sky-profile-editor textarea { width: 100%; margin-top: 7px; padding: 12px 2px 10px; border: 0; border-bottom: 1px solid rgba(62,82,109,.25); border-radius: 0; background: transparent; color: var(--sky-ink); font: inherit; box-shadow: none; outline: none; transition: border-color .18s; }
.sky-auth-form input:focus, .sky-profile-editor input:focus, .sky-profile-editor textarea:focus { border-color: #b3914d; }
.sky-auth-form small { display: block; margin-top: 4px; color: var(--sky-muted); font-size: .7rem; font-weight: 400; }
.sky-auth-check { display: flex !important; align-items: center; gap: 8px; margin: 0 0 14px !important; color: var(--sky-muted) !important; font-weight: 400 !important; }
.sky-auth-check input { width: auto; margin: 0; accent-color: var(--sky-deep); }
.sky-auth-forgot, .sky-auth-back { width: auto !important; margin: 0 0 18px; padding: 0 !important; border: 0 !important; background: transparent !important; color: var(--sky-muted) !important; box-shadow: none !important; font-size: .77rem !important; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.sky-auth-form h3 { margin: 5px 0 6px; color: var(--sky-deep); font-size: 1.1rem; }
.sky-auth-copy { margin: 0 0 20px; color: var(--sky-muted); font-size: .8rem; }
.sky-primary-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; width: 100%; min-height: 48px; padding: 12px 18px; border: 1px solid var(--sky-deep) !important; border-radius: 999px !important; background: var(--sky-deep) !important; color: #fff !important; font-size: .9rem !important; font-weight: 700; text-decoration: none !important; box-shadow: none !important; cursor: pointer; transition: transform .15s, opacity .15s; }
.sky-primary-button:hover { opacity: .9; transform: translateY(-1px); }
.sky-auth-footnote { margin: 24px 0 0; padding-top: 19px; border-top: 1px solid var(--sky-line); color: var(--sky-muted); text-align: center; font-size: .7rem; }
.sky-auth-notice { margin: -9px 0 20px; padding: 10px 12px; border-left: 2px solid; background: rgba(255,255,255,.72); font-size: .78rem; }
.sky-auth-notice--error { border-color: #b96565; color: #954646; }
.sky-auth-notice--success { border-color: #75927e; color: #57715e; }
.sky-auth-card--message { text-align: center; }
.sky-auth-actions { display: grid; gap: 12px; margin-top: 24px; }
.sky-text-button { color: var(--sky-muted); font-size: .8rem; }

.sky-dashboard { width: min(1180px, calc(100% - 32px)); margin: 30px auto 72px; }
.sky-dashboard-message { margin-bottom: 18px; padding: 12px 15px; border: 1px solid rgba(117,146,126,.25); background: rgba(117,146,126,.07); border-radius: 12px; color: #57715e; font-size: .85rem; }
.sky-profile-card { position: relative; display: grid; grid-template-columns: auto 1fr auto; gap: 24px; align-items: center; min-height: 210px; overflow: hidden; padding: 34px 38px; border: 1px solid var(--sky-line); border-radius: 26px; background: var(--sky-paper); box-shadow: 0 14px 42px rgba(31,60,90,.055); }
.sky-profile-orbit { position: absolute; right: 9%; top: 50%; width: 230px; height: 230px; transform: translateY(-50%); border: 1px solid rgba(31,60,136,.06); border-radius: 50%; pointer-events: none; }
.sky-profile-orbit::before { content: ''; position: absolute; inset: 28px; border: 1px solid rgba(179,145,77,.09); border-radius: 50%; }
.sky-profile-orbit span { position: absolute; width: 4px; height: 4px; border-radius: 50%; background: #b3914d; opacity: .55; }
.sky-profile-orbit span:nth-child(1){top:18%;left:16%}.sky-profile-orbit span:nth-child(2){right:6%;top:46%}.sky-profile-orbit span:nth-child(3){bottom:12%;left:38%}
.sky-profile-avatar { position: relative; z-index: 1; display: grid; place-items: center; width: 82px; height: 82px; border: 1px solid rgba(31,60,136,.16); border-radius: 50%; background: #fff; color: var(--sky-deep); font-size: 1.55rem; font-weight: 700; box-shadow: inset 0 0 0 7px rgba(31,60,136,.025); }
.sky-profile-main { position: relative; z-index: 1; min-width: 0; }
.sky-profile-main h1 { margin: 0 0 7px; color: var(--sky-deep); text-align: left; font-size: clamp(1.65rem,3vw,2.15rem); line-height: 1.3; text-shadow: none; }
.sky-profile-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; color: var(--sky-muted); font-size: .79rem; }
.sky-profile-bio { max-width: 650px; margin: 15px 0 0; color: #5d6878; font-size: .86rem; }
.sky-quiet-button { position: relative; z-index: 1; width: auto !important; padding: 9px 14px !important; border: 1px solid var(--sky-line) !important; border-radius: 999px !important; background: rgba(255,255,255,.72) !important; color: var(--sky-deep) !important; box-shadow: none !important; font-size: .75rem !important; }
.sky-profile-editor { margin-top: 12px; padding: 24px 28px; border: 1px solid var(--sky-line); border-radius: 20px; background: #fff; }
.sky-profile-editor[hidden] { display: none; }
.sky-editor-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 24px; }
.sky-editor-wide { grid-column: 1 / -1; }
.sky-profile-editor textarea { resize: vertical; }
.sky-editor-actions { width: 180px; margin-left: auto; }
.sky-dashboard-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 18px; margin-top: 18px; }
.sky-panel { padding: 27px 30px; border: 1px solid var(--sky-line); border-radius: 22px; background: rgba(255,255,255,.78); }
.sky-panel-heading, .sky-section-heading { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; }
.sky-panel-heading h2, .sky-section-heading h2, .sky-coming-panel h2 { margin: 0; color: var(--sky-deep); font-size: 1.2rem; line-height: 1.4; }
.sky-panel-mark { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--sky-line); border-radius: 50%; color: #b3914d; font-size: .75rem; }
.sky-today-list { margin-top: 20px; border-top: 1px solid var(--sky-line); }
.sky-today-row { display: flex; justify-content: space-between; gap: 16px; padding: 13px 2px; border-bottom: 1px solid var(--sky-line); font-size: .83rem; }
.sky-today-row span { display: flex; align-items: center; gap: 10px; }
.sky-today-row i { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid var(--sky-line); border-radius: 50%; color: #8b7960; font-style: normal; font-size: .65rem; }
.sky-today-row strong { color: var(--sky-deep); font-size: .79rem; }
.sky-panel-note { margin: 16px 0 0; color: var(--sky-muted); font-size: .72rem; }
.sky-badge-list { display: grid; gap: 10px; margin-top: 19px; }
.sky-badge { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center; padding: 10px 0; }
.sky-badge-emblem { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(179,145,77,.3); border-radius: 50%; background: #fffdf8; color: #a88746; box-shadow: inset 0 0 0 5px rgba(179,145,77,.035); }
.sky-badge strong, .sky-badge small { display: block; }
.sky-badge strong { color: var(--sky-deep); font-size: .82rem; }
.sky-badge small { margin-top: 2px; color: var(--sky-muted); font-size: .69rem; }
.sky-empty-copy { color: var(--sky-muted); font-size: .78rem; }
.sky-progress-section { margin-top: 42px; }
.sky-section-heading { align-items: end; margin-bottom: 16px; }
.sky-section-heading > p { max-width: 420px; margin: 0; color: var(--sky-muted); text-align: right; font-size: .76rem; }
.sky-progress-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.sky-progress-card { padding: 22px 20px 19px; border: 1px solid var(--sky-line); border-radius: 19px; background: #fff; }
.sky-progress-icon { display: grid; place-items: center; width: 34px; height: 34px; margin-bottom: 19px; border: 1px solid var(--sky-line); border-radius: 50%; color: #8b7960; font-size: .7rem; }
.sky-progress-head { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.sky-progress-head h3 { margin: 0; color: var(--sky-deep); font-size: .89rem; }
.sky-progress-head strong { color: var(--sky-deep); font-size: 1.08rem; }
.sky-progress-track { height: 3px; margin: 13px 0 10px; overflow: hidden; border-radius: 99px; background: rgba(31,60,136,.07); }
.sky-progress-track span { display: block; height: 100%; border-radius: inherit; background: #8ca6b9; }
.sky-progress-card p { margin: 0; color: var(--sky-muted); font-size: .69rem; }
.sky-coming-panel { display: grid; grid-template-columns: auto 1fr; gap: 22px; align-items: center; margin-top: 28px; padding: 26px 30px; border-top: 1px solid var(--sky-line); border-bottom: 1px solid var(--sky-line); }
.sky-coming-star { display: grid; place-items: center; width: 54px; height: 54px; border: 1px solid rgba(179,145,77,.25); border-radius: 50%; color: #a88746; }
.sky-coming-panel p:last-child { margin: 7px 0 0; color: var(--sky-muted); font-size: .78rem; }
.sky-dashboard-footer { margin-top: 24px; text-align: right; }
.sky-dashboard-footer a { color: var(--sky-muted); font-size: .75rem; }

@media (max-width: 880px) {
  .sky-dashboard-grid { grid-template-columns: 1fr; }
  .sky-progress-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .sky-profile-card { grid-template-columns: auto 1fr; }
  .sky-profile-card .sky-quiet-button { grid-column: 1 / -1; justify-self: start; }
}
@media (max-width: 600px) {
  .sky-auth-card { padding: 34px 24px 27px; border-radius: 20px; }
  .sky-dashboard { width: min(100% - 20px, 1180px); margin-top: 14px; }
  .sky-profile-card { grid-template-columns: 1fr; gap: 14px; padding: 27px 22px; }
  .sky-profile-avatar { width: 64px; height: 64px; }
  .sky-profile-orbit { right: -80px; }
  .sky-profile-meta { display: grid; gap: 3px; }
  .sky-editor-grid { grid-template-columns: 1fr; }
  .sky-editor-wide { grid-column: auto; }
  .sky-editor-actions { width: 100%; }
  .sky-panel { padding: 23px 20px; }
  .sky-progress-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .sky-progress-card { padding: 17px 15px; }
  .sky-progress-icon { margin-bottom: 14px; }
  .sky-progress-head { display: block; }
  .sky-progress-head strong { display: block; margin-top: 3px; }
  .sky-section-heading { display: block; }
  .sky-section-heading > p { margin-top: 7px; text-align: left; }
  .sky-coming-panel { padding: 22px 4px; }
}

/* ===== v0.2: badges / items / cape ===== */
.sky-panel-link, .sky-progress-card--link { color: inherit !important; text-decoration: none !important; }
.sky-panel-link { display: block; transition: transform .18s, border-color .18s; }
.sky-panel-link:hover, .sky-progress-card--link:hover { transform: translateY(-2px); border-color: rgba(31,60,136,.2); }
.sky-panel-more, .sky-card-arrow { display: block; margin-top: 14px; color: var(--sky-muted); font-size: .7rem; text-align: right; }
.sky-progress-grid--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.sky-cape-card { min-height: 238px; }
.sky-cape-visual { display: grid; place-items: center; min-height: 92px; margin: -4px 0 14px; }
.sky-cape-visual img { width: auto; max-width: 150px; max-height: 92px; object-fit: contain; }
.sky-cape-fallback { position: relative; display: grid; place-items: center; width: 84px; height: 84px; }
.sky-cape-fallback::before, .sky-cape-fallback::after { content: ''; position: absolute; inset: 10px; border: 1px solid rgba(179,145,77,.28); transform: rotate(45deg); }
.sky-cape-fallback::after { inset: 20px; border-color: rgba(31,60,136,.18); }
.sky-cape-fallback > span { color: #a88746; font-size: 1.65rem; z-index: 1; }
.sky-cape-fallback > small { position: absolute; bottom: -3px; color: var(--sky-muted); font-size: .57rem; letter-spacing: .12em; }
.sky-cape-count { margin: 11px 0 4px !important; color: var(--sky-deep) !important; font-size: .82rem !important; }
.sky-cape-count span { color: var(--sky-muted); font-size: .67rem; }
.sky-profile-editor label small { display: block; margin: -8px 0 14px; color: var(--sky-muted); font-size: .64rem; line-height: 1.5; }

.sky-subpage { width: min(1080px, calc(100% - 32px)); margin: 32px auto 74px; }
.sky-back-link { display: inline-block; margin-bottom: 20px; color: var(--sky-muted) !important; font-size: .75rem; text-decoration: none !important; }
.sky-subpage-header { display: flex; justify-content: space-between; gap: 24px; align-items: end; padding: 24px 2px 28px; border-bottom: 1px solid var(--sky-line); }
.sky-subpage-header h1 { margin: 2px 0 8px; color: var(--sky-deep); text-align: left; font-size: clamp(1.8rem,4vw,2.5rem); text-shadow: none; }
.sky-subpage-header p:last-child { max-width: 620px; margin: 0; color: var(--sky-muted); font-size: .78rem; }
.sky-trophy-count { display: grid; grid-template-columns: auto auto; align-items: baseline; justify-content: end; min-width: 120px; }
.sky-trophy-count strong { color: var(--sky-deep); font-size: 2.1rem; line-height: 1; }
.sky-trophy-count span { color: var(--sky-muted); font-size: .9rem; }
.sky-trophy-count small { grid-column: 1 / -1; margin-top: 5px; color: var(--sky-muted); text-align: right; font-size: .62rem; letter-spacing: .08em; }
.sky-trophy-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 22px; }
.sky-trophy { display: grid; grid-template-columns: 76px 1fr; gap: 18px; align-items: center; min-height: 126px; padding: 20px; border: 1px solid var(--sky-line); border-radius: 18px; background: rgba(255,255,255,.82); }
.sky-trophy-emblem { display: grid; place-items: center; width: 68px; height: 68px; border: 1px solid rgba(179,145,77,.28); border-radius: 50%; background: #fffdf8; box-shadow: inset 0 0 0 7px rgba(179,145,77,.035); }
.sky-trophy-emblem span { color: #a88746; font-size: 1.25rem; }
.sky-trophy-state { margin-bottom: 3px; color: #8b7960; font-size: .58rem; letter-spacing: .1em; }
.sky-trophy h2 { margin: 0; color: var(--sky-deep); font-size: .92rem; }
.sky-trophy p { margin: 5px 0; color: var(--sky-muted); font-size: .7rem; line-height: 1.6; }
.sky-trophy time { color: #9a9fa9; font-size: .62rem; }
.sky-trophy.is-locked { opacity: .43; filter: grayscale(1); }
.sky-trophy.is-locked .sky-trophy-emblem { background: #f4f5f6; }

.sky-item-category-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; margin-top: 22px; }
.sky-item-category-card { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; min-height: 90px; padding: 17px 18px; border: 1px solid var(--sky-line); border-radius: 16px; background: #fff; }
.sky-item-category-symbol { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--sky-line); border-radius: 50%; color: #a88746; }
.sky-item-category-card h2 { margin: 0; color: var(--sky-deep); font-size: .78rem; line-height: 1.45; }
.sky-item-category-card p { margin: 3px 0 0; color: var(--sky-muted); font-size: .65rem; }
.sky-item-category-card strong { color: var(--sky-deep); font-size: .85rem; }

@media (max-width: 880px) {
  .sky-progress-grid--three { grid-template-columns: 1fr 1fr; }
  .sky-cape-card { grid-column: 1 / -1; }
  .sky-item-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .sky-subpage { width: min(100% - 20px,1080px); margin-top: 14px; }
  .sky-subpage-header { display: block; }
  .sky-trophy-count { justify-content: start; margin-top: 18px; }
  .sky-trophy-count small { text-align: left; }
  .sky-trophy-grid { grid-template-columns: 1fr; }
  .sky-trophy { grid-template-columns: 58px 1fr; padding: 16px; }
  .sky-trophy-emblem { width: 52px; height: 52px; }
  .sky-item-category-grid { grid-template-columns: 1fr; }
  .sky-progress-grid--three { grid-template-columns: 1fr; }
  .sky-cape-card { grid-column: auto; }
}

/* ===== v0.3: profile birth / account / responsive dashboard ===== */
.sky-profile-avatar, .sky-account-avatar { overflow:hidden; }
.sky-profile-avatar img, .sky-account-avatar img { width:100%; height:100%; object-fit:cover; display:block; }
.sky-dashboard-tabs { display:flex; gap:26px; margin-top:28px; border-bottom:1px solid var(--sky-line); }
.sky-dashboard-tabs button { position:relative; width:auto!important; padding:10px 2px 13px!important; border:0!important; border-radius:0!important; background:transparent!important; color:var(--sky-muted)!important; box-shadow:none!important; font-size:.78rem!important; }
.sky-dashboard-tabs button::after { content:''; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:transparent; }
.sky-dashboard-tabs button.is-active { color:var(--sky-deep)!important; font-weight:700; }
.sky-dashboard-tabs button.is-active::after { background:#b3914d; }
.sky-dashboard-tabpanel[hidden] { display:none!important; }
.sky-dashboard-sections { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:18px; margin-top:18px; align-items:stretch; }
.sky-dashboard-sections > .sky-panel { height:100%; min-height:360px; display:flex; flex-direction:column; }
.sky-panel--badges .sky-panel-more { margin-top:auto; padding-top:12px; }
.sky-panel--badges .sky-badge-list { flex:1; }
.sky-today-row strong { display:flex; flex-direction:column; align-items:flex-end; gap:2px; text-align:right; }
.sky-today-row strong small { color:var(--sky-muted); font-size:.58rem; font-weight:500; }
.sky-dashboard-sections > .sky-progress-section { grid-column:1 / -1; margin-top:16px; }
.sky-progress-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sky-progress-card { min-width:0; padding:22px; }
.sky-progress-card-top { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:18px; }
.sky-progress-card .sky-progress-icon { margin:0; flex:0 0 auto; }
.sky-progress-percent { color:var(--sky-deep); font-size:1.2rem; font-weight:700; letter-spacing:-.02em; }
.sky-progress-card h3 { margin:0; color:var(--sky-deep); font-size:.92rem; }
.sky-progress-bottom { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-top:10px; }
.sky-progress-bottom strong { color:var(--sky-muted); font-size:.72rem; font-weight:600; }
.sky-progress-bottom small { color:var(--sky-muted); font-size:.64rem; }
.sky-account-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:22px; }
.sky-account-card { padding:26px 28px; border:1px solid var(--sky-line); border-radius:20px; background:#fff; }
.sky-account-card--wide { grid-column:1 / -1; }
.sky-account-heading { margin-bottom:20px; }
.sky-account-heading h2 { margin:0; color:var(--sky-deep); font-size:1.08rem; }
.sky-account-heading > p:last-child:not(.sky-eyebrow) { margin:6px 0 0; color:var(--sky-muted); font-size:.72rem; }
.sky-account-card label { display:block; margin:15px 0; color:var(--sky-deep); font-size:.75rem; font-weight:700; }
.sky-account-card input[type="text"], .sky-account-card input[type="email"], .sky-account-card input[type="password"] { width:100%; margin-top:7px; padding:11px 2px 9px; border:0; border-bottom:1px solid rgba(62,82,109,.25); border-radius:0; background:transparent; color:var(--sky-ink); outline:0; }
.sky-account-readonly { display:flex; justify-content:space-between; gap:16px; padding:12px 0; border-bottom:1px solid var(--sky-line); font-size:.75rem; }
.sky-account-readonly span { color:var(--sky-muted); }
.sky-account-readonly strong { color:var(--sky-deep); }
.sky-account-save { width:auto; min-width:190px; margin-top:10px; }
.sky-avatar-setting { display:grid; grid-template-columns:auto 1fr; gap:20px; align-items:center; }
.sky-account-avatar { width:92px; height:92px; border:1px solid var(--sky-line); border-radius:50%; background:#f7f9fb; }
.sky-avatar-setting input[type="file"] { width:100%; color:var(--sky-muted); font-size:.7rem; }
.sky-account-inline-actions { display:flex; gap:10px; align-items:center; margin-top:12px; }
.sky-text-action { width:auto!important; padding:7px 0!important; border:0!important; background:transparent!important; color:var(--sky-muted)!important; box-shadow:none!important; font-size:.68rem!important; text-decoration:underline; }
.sky-avatar-setting small { display:block; margin-top:7px; color:var(--sky-muted); font-size:.62rem; }
.sky-order-list { display:grid; gap:8px; }
.sky-order-item { display:grid; grid-template-columns:auto 1fr auto; gap:12px; align-items:center; padding:13px 14px; border:1px solid var(--sky-line); border-radius:13px; background:#fbfcfd; cursor:grab; }
.sky-order-item.is-dragging { opacity:.45; }
.sky-order-handle { color:#a8afb9; letter-spacing:-.25em; }
.sky-order-item strong { color:var(--sky-deep); font-size:.76rem; }
.sky-order-buttons { display:flex; gap:5px; }
.sky-order-buttons button { width:30px!important; height:30px; padding:0!important; border:1px solid var(--sky-line)!important; border-radius:50%!important; background:#fff!important; color:var(--sky-muted)!important; box-shadow:none!important; font-size:.72rem!important; }
.sky-order-save { margin-top:14px; }
.sky-account-danger { margin-top:22px; text-align:right; }
.sky-account-danger a { color:#9a6666; font-size:.72rem; }
.sky-account-toast { position:fixed; z-index:99999; left:50%; bottom:28px; transform:translate(-50%,20px); min-width:220px; max-width:min(90vw,460px); padding:11px 16px; border:1px solid rgba(117,146,126,.24); border-radius:999px; background:#fff; color:#57715e; text-align:center; font-size:.76rem; box-shadow:0 12px 32px rgba(31,60,90,.12); opacity:0; pointer-events:none; transition:.2s; }
.sky-account-toast.is-show { opacity:1; transform:translate(-50%,0); }
.sky-account-toast.is-error { color:#984b4b; border-color:rgba(185,101,101,.28); }

@media (max-width:880px) {
  .sky-dashboard-sections { grid-template-columns:1fr; }
  .sky-dashboard-sections > .sky-panel { min-height:0; }
  .sky-dashboard-sections > .sky-progress-section { grid-column:auto; margin-top:10px; }
  .sky-progress-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .sky-account-layout { grid-template-columns:1fr; }
  .sky-account-card--wide { grid-column:auto; }
}
@media (max-width:700px) {
  .sky-progress-grid--three { grid-template-columns:1fr; }
  .sky-progress-card { display:grid; grid-template-columns:auto 1fr; column-gap:14px; align-items:center; padding:17px 18px; }
  .sky-progress-card-top { grid-row:1 / span 3; display:block; margin:0; }
  .sky-progress-card-top .sky-progress-icon { margin-bottom:10px; }
  .sky-progress-percent { display:block; font-size:.9rem; }
  .sky-progress-card h3 { grid-column:2; }
  .sky-progress-track { grid-column:2; width:100%; margin:8px 0 6px; }
  .sky-progress-bottom { grid-column:2; margin-top:0; }
}
@media (max-width:600px) {
  .sky-dashboard-tabs { gap:18px; overflow-x:auto; }
  .sky-today-row { align-items:flex-start; }
  .sky-today-row span { min-width:0; }
  .sky-today-row strong { flex:0 0 auto; max-width:45%; }
  .sky-avatar-setting { grid-template-columns:1fr; }
  .sky-account-card { padding:22px 18px; }
  .sky-account-save { width:100%; min-width:0; }
  .sky-account-inline-actions { flex-wrap:wrap; }
}


/* ===== v0.4: finished plugin integration / layout alignment ===== */
.sky-dashboard .sky-panel,
.sky-dashboard .sky-progress-section,
.sky-dashboard .sky-panel h2,
.sky-dashboard .sky-section-heading h2,
.sky-dashboard .sky-progress-card h3 {
  margin-top: 0 !important;
}
.sky-dashboard .sky-panel h2,
.sky-dashboard .sky-section-heading h2,
.sky-dashboard .sky-progress-card h3 {
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
}
.sky-dashboard .sky-panel h2::before,
.sky-dashboard .sky-panel h2::after,
.sky-dashboard .sky-section-heading h2::before,
.sky-dashboard .sky-section-heading h2::after,
.sky-dashboard .sky-progress-card h3::before,
.sky-dashboard .sky-progress-card h3::after {
  content: none !important;
  display: none !important;
}

.sky-dashboard-sections {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-flow: row;
  align-items: stretch;
}
.sky-dashboard-sections > .sky-panel--summary {
  width: 100%;
  min-width: 0;
  min-height: 374px;
  height: 100%;
  margin: 0 !important;
  padding: 27px 30px !important;
}
.sky-panel--today,
.sky-panel--badges {
  display: flex !important;
  flex-direction: column;
}
.sky-panel--today .sky-today-list,
.sky-panel--badges .sky-badge-list {
  flex: 1 1 auto;
}
.sky-panel--today .sky-panel-note,
.sky-panel--badges .sky-panel-more {
  margin-top: auto;
}
.sky-panel-link {
  color: inherit !important;
  text-decoration: none !important;
}
.sky-panel-link:hover {
  color: inherit !important;
}
.sky-panel-link:focus-visible,
.sky-progress-card--link:focus-visible {
  outline: 2px solid rgba(179,145,77,.45);
  outline-offset: 3px;
}

.sky-progress-grid--three {
  align-items: stretch;
}
.sky-progress-card {
  height: 100%;
  margin: 0 !important;
}
.sky-progress-card--link {
  color: inherit !important;
  text-decoration: none !important;
}
.sky-progress-card--link:hover {
  color: inherit !important;
  transform: translateY(-1px);
}
.sky-progress-bottom small {
  white-space: nowrap;
}

@media (max-width: 920px) {
  .sky-dashboard-sections {
    grid-template-columns: 1fr;
  }
  .sky-dashboard-sections > .sky-panel--summary {
    min-height: 0;
  }
  .sky-dashboard-sections > .sky-progress-section {
    grid-column: 1;
    margin-top: 4px;
  }
  .sky-progress-grid--three {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .sky-progress-card {
    display: grid;
    grid-template-columns: 52px minmax(0,1fr) auto;
    grid-template-rows: auto auto;
    column-gap: 14px;
    row-gap: 7px;
    align-items: center;
    padding: 16px 18px;
  }
  .sky-progress-card-top {
    grid-column: 1;
    grid-row: 1 / span 2;
    display: grid;
    justify-items: center;
    gap: 5px;
    margin: 0;
  }
  .sky-progress-card .sky-progress-icon {
    width: 38px;
    height: 38px;
  }
  .sky-progress-percent {
    font-size: .72rem;
  }
  .sky-progress-card h3 {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
  }
  .sky-progress-track {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    margin: 0;
    align-self: start;
  }
  .sky-progress-bottom {
    grid-column: 3;
    grid-row: 1 / span 2;
    display: grid;
    justify-items: end;
    align-content: center;
    gap: 4px;
    margin: 0;
    text-align: right;
  }
}
@media (max-width: 560px) {
  .sky-dashboard {
    width: min(100% - 20px, 1180px);
    margin-top: 16px;
  }
  .sky-profile-card {
    grid-template-columns: 62px minmax(0,1fr);
    gap: 14px;
    padding: 22px 18px;
  }
  .sky-profile-avatar {
    width: 62px;
    height: 62px;
  }
  .sky-profile-card > .sky-quiet-button {
    grid-column: 1 / -1;
    justify-self: start;
  }
  .sky-profile-meta {
    display: grid;
    gap: 4px;
  }
  .sky-panel {
    padding: 22px 18px;
  }
  .sky-dashboard-sections > .sky-panel--summary {
    padding: 22px 18px !important;
  }
  .sky-today-row {
    gap: 10px;
  }
  .sky-today-row > span {
    flex: 1 1 auto;
  }
  .sky-today-row strong {
    max-width: 48%;
  }
  .sky-progress-card {
    grid-template-columns: 44px minmax(0,1fr);
    grid-template-rows: auto auto auto;
    column-gap: 12px;
  }
  .sky-progress-card-top {
    grid-row: 1 / span 3;
  }
  .sky-progress-bottom {
    grid-column: 2;
    grid-row: 3;
    display: flex;
    justify-content: space-between;
    width: 100%;
    text-align: left;
  }
}

/* ===== v0.5: quieter Sky notebook UI ===== */
.sky-dashboard {
  --sky-paper: #fff;
  --sky-soft: #f7fafb;
  --sky-skyline: rgba(92, 131, 151, .14);
  --sky-light: rgba(112, 155, 174, .09);
}
.sky-dashboard .sky-eyebrow { display:none !important; }
.sky-section-kicker {
  margin: 0 0 5px !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: #81939d;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .04em;
  line-height: 1.5;
}
.sky-section-kicker::before,
.sky-section-kicker::after { content:none !important; display:none !important; }

.sky-profile-card {
  min-height: 176px;
  padding: 30px 34px;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 10px 34px rgba(45, 76, 91, .045);
}
.sky-profile-card::after {
  content:"";
  position:absolute;
  left:34px;
  right:34px;
  bottom:0;
  height:1px;
  background:var(--sky-skyline);
}
.sky-profile-orbit { display:none !important; }
.sky-profile-sparkles {
  position:absolute;
  right:34px;
  top:22px;
  display:flex;
  gap:12px;
  align-items:center;
  color:#a3b6bd;
  opacity:.48;
  font-size:.72rem;
  pointer-events:none;
}
.sky-profile-sparkles span:nth-child(2){ font-size:1rem; }
.sky-profile-avatar {
  width:88px;
  height:88px;
  border:1px solid rgba(92,131,151,.2);
  background:#f9fbfc;
  box-shadow:0 0 0 6px rgba(112,155,174,.05);
}
.sky-profile-main h1 {
  color:#3d5560;
  font-size:clamp(1.55rem,3vw,2rem);
  letter-spacing:.01em;
}
.sky-profile-meta { color:#71858e; }
.sky-profile-bio { color:#657982; }
.sky-quiet-button {
  border-color:rgba(92,131,151,.18)!important;
  background:#fff!important;
  color:#607983!important;
}

.sky-dashboard-tabs {
  margin-top:22px;
  border-bottom:1px solid var(--sky-skyline);
}
.sky-dashboard-tabs button {
  color:#82949c!important;
}
.sky-dashboard-tabs button.is-active {
  color:#496772!important;
}
.sky-dashboard-tabs button.is-active::after { background:#88aebc; }

.sky-dashboard-sections {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}
.sky-dashboard-sections > .sky-panel--summary {
  min-height:352px;
  padding:25px 27px!important;
  border-color:rgba(92,131,151,.14);
  border-radius:20px;
  background:#fff;
  box-shadow:none;
}
.sky-panel-heading h2,
.sky-section-heading h2,
.sky-account-heading h2 {
  color:#46616c!important;
  font-size:1.08rem!important;
  letter-spacing:.01em!important;
}
.sky-panel-mark {
  width:30px;
  height:30px;
  border-color:rgba(92,131,151,.16);
  color:#83a6b3;
  background:#fbfdfe;
}
.sky-today-list { border-color:var(--sky-skyline); }
.sky-today-row { border-color:var(--sky-skyline); }
.sky-today-row i {
  width:22px;
  height:22px;
  border:0;
  border-radius:0;
  color:#8fb0bb;
  font-size:.74rem;
}
.sky-today-row strong { color:#4e6872; }
.sky-panel-note { color:#93a1a6; }

.sky-badge-emblem {
  border-color:rgba(92,131,151,.18);
  background:#fbfdfe;
  color:#789aa6;
  box-shadow:none;
}
.sky-badge strong { color:#4e6872; }
.sky-panel-more { color:#81959d; }
.sky-panel-link:hover,
.sky-progress-card--link:hover {
  transform:none;
  border-color:rgba(92,131,151,.26);
}

.sky-progress-section {
  margin-top:34px!important;
  padding-top:4px;
}
.sky-section-heading {
  align-items:flex-end;
  padding:0 2px 12px;
  border-bottom:1px solid var(--sky-skyline);
}
.sky-section-heading > p {
  margin:0;
  color:#8b9ba2;
  font-size:.72rem;
}
.sky-progress-grid--three {
  margin-top:14px;
  gap:12px;
}
.sky-progress-card {
  min-height:178px;
  padding:20px;
  border-color:rgba(92,131,151,.14);
  border-radius:18px;
  background:#fff;
  box-shadow:none;
}
.sky-progress-icon {
  border:0;
  background:#f6fafb;
  color:#88aab6;
}
.sky-progress-percent,
.sky-progress-card h3 { color:#4a6570; }
.sky-progress-track { background:rgba(104,147,166,.1); }
.sky-progress-track span { background:#91b3bf; }

/* Current wing card: count, not completion percentage. */
.sky-progress-card--wing {
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  grid-template-rows:auto 1fr;
  gap:10px 16px;
  align-items:center;
  background:#fbfdfe;
}
.sky-wing-visual {
  grid-row:1 / span 2;
  position:relative;
  display:flex;
  justify-content:center;
  align-items:center;
  width:74px;
  height:74px;
  color:#7fa5b3;
}
.sky-wing-visual b {
  position:relative;
  z-index:2;
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  font-size:.9rem;
  font-weight:500;
}
.sky-wing-left,
.sky-wing-right {
  position:absolute;
  top:50%;
  display:flex;
  gap:2px;
  transform:translateY(-50%);
}
.sky-wing-left { right:50%; margin-right:8px; flex-direction:row-reverse; }
.sky-wing-right { left:50%; margin-left:8px; }
.sky-wing-left i,
.sky-wing-right i {
  display:block;
  width:12px;
  height:25px;
  border:1px solid rgba(105,149,167,.45);
  border-radius:70% 18% 70% 18%;
  background:#fff;
  transform-origin:center;
}
.sky-wing-left i:nth-child(1) { transform:rotate(54deg) scale(.88); }
.sky-wing-left i:nth-child(2) { transform:rotate(67deg) scale(.74); opacity:.85; }
.sky-wing-left i:nth-child(3) { transform:rotate(78deg) scale(.58); opacity:.65; }
.sky-wing-right i:nth-child(1) { transform:rotate(-54deg) scale(.88); }
.sky-wing-right i:nth-child(2) { transform:rotate(-67deg) scale(.74); opacity:.85; }
.sky-wing-right i:nth-child(3) { transform:rotate(-78deg) scale(.58); opacity:.65; }
.sky-card-label {
  display:block;
  margin-bottom:2px;
  color:#738890;
  font-size:.72rem;
}
.sky-wing-copy { min-width:0; }
.sky-wing-count {
  display:inline-block;
  color:#45636f;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.035em;
}
.sky-wing-count small {
  margin-left:3px;
  color:#72878f;
  font-size:.72rem;
  font-weight:600;
}
.sky-wing-level {
  display:inline-block;
  margin-left:8px;
  padding:4px 8px;
  border:1px solid rgba(92,131,151,.14);
  border-radius:999px;
  color:#72909b;
  font-size:.64rem;
  vertical-align:middle;
}
.sky-wing-detail {
  align-self:end;
  display:flex;
  justify-content:space-between;
  gap:8px;
  min-width:0;
  color:#87979d;
  font-size:.64rem;
}
.sky-wing-detail small { white-space:nowrap; color:#7b929a; }

/* Account area: quieter labels and a dedicated avatar picker. */
.sky-account-layout {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.sky-account-card {
  border-color:rgba(92,131,151,.14);
  background:#fff;
  box-shadow:none;
}
.sky-avatar-card { grid-column:1 / -1; }
.sky-avatar-setting {
  grid-template-columns:130px minmax(0,1fr);
  gap:28px;
  align-items:center;
  padding:10px 0 2px;
}
.sky-avatar-preview-wrap {
  position:relative;
  display:grid;
  place-items:center;
  width:124px;
  height:124px;
}
.sky-avatar-preview-wrap::before {
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(92,131,151,.12);
  border-radius:50%;
}
.sky-avatar-preview-wrap::after {
  content:"";
  position:absolute;
  inset:9px;
  border:1px solid rgba(92,131,151,.08);
  border-radius:50%;
}
.sky-account-avatar {
  position:relative;
  z-index:2;
  width:96px;
  height:96px;
  border:0;
  background:#f6fafb;
  box-shadow:0 0 0 5px #fff;
}
.sky-avatar-star {
  position:absolute;
  z-index:3;
  right:9px;
  bottom:15px;
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  border:1px solid rgba(92,131,151,.16);
  border-radius:50%;
  background:#fff;
  color:#86a9b5;
  font-size:.66rem;
}
.sky-avatar-controls { min-width:0; }
.sky-avatar-file {
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
}
.sky-avatar-file-button {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  margin:0!important;
  padding:9px 14px!important;
  border:1px solid rgba(92,131,151,.18)!important;
  border-radius:999px!important;
  background:#f9fbfc!important;
  color:#58747f!important;
  font-size:.72rem!important;
  font-weight:600!important;
  cursor:pointer;
}
.sky-avatar-file-name {
  display:block;
  max-width:100%;
  margin-top:10px;
  overflow:hidden;
  color:#8a9aa1;
  font-size:.65rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sky-account-inline-actions { margin-top:14px; }
.sky-avatar-setting small { margin-top:9px; line-height:1.6; }

/* Display-order controls were intentionally removed in v0.5. */
.sky-order-list,
.sky-order-save { display:none!important; }

@media (max-width:920px) {
  .sky-dashboard-sections { grid-template-columns:1fr; }
  .sky-dashboard-sections > .sky-panel--summary { min-height:0; }
  .sky-progress-grid--three { grid-template-columns:1fr; }
  .sky-progress-card { min-height:0; }
  .sky-progress-card:not(.sky-progress-card--wing) {
    display:grid;
    grid-template-columns:48px minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    gap:7px 13px;
    align-items:center;
  }
  .sky-progress-card:not(.sky-progress-card--wing) .sky-progress-card-top {
    grid-row:1 / span 2;
    grid-column:1;
    display:grid;
    justify-items:center;
    margin:0;
  }
  .sky-progress-card:not(.sky-progress-card--wing) h3 { grid-column:2; grid-row:1; }
  .sky-progress-card:not(.sky-progress-card--wing) .sky-progress-track { grid-column:2; grid-row:2; margin:0; }
  .sky-progress-card:not(.sky-progress-card--wing) .sky-progress-bottom { grid-column:3; grid-row:1 / span 2; display:grid; justify-items:end; margin:0; }
}
@media (max-width:620px) {
  .sky-profile-card {
    grid-template-columns:68px minmax(0,1fr);
    gap:14px;
    padding:23px 18px;
  }
  .sky-profile-avatar { width:66px; height:66px; }
  .sky-profile-sparkles { right:18px; top:15px; }
  .sky-profile-card > .sky-quiet-button { grid-column:1 / -1; justify-self:start; }
  .sky-section-heading { display:block; }
  .sky-section-heading > p { margin-top:4px; }
  .sky-progress-card--wing {
    grid-template-columns:64px minmax(0,1fr);
    padding:18px 16px;
  }
  .sky-wing-visual { width:62px; height:62px; }
  .sky-wing-left i,.sky-wing-right i { width:10px; height:21px; }
  .sky-wing-count { font-size:1.65rem; }
  .sky-wing-detail { grid-column:1 / -1; padding-top:4px; }
  .sky-progress-card:not(.sky-progress-card--wing) {
    grid-template-columns:42px minmax(0,1fr);
    grid-template-rows:auto auto auto;
  }
  .sky-progress-card:not(.sky-progress-card--wing) .sky-progress-card-top { grid-row:1 / span 3; }
  .sky-progress-card:not(.sky-progress-card--wing) .sky-progress-bottom { grid-column:2; grid-row:3; display:flex; justify-content:space-between; width:100%; }
  .sky-avatar-setting { grid-template-columns:1fr; justify-items:center; text-align:center; }
  .sky-avatar-controls { width:100%; }
  .sky-account-inline-actions { justify-content:center; }
}

/* ===== v0.6: simple schedule / badge / collection UI ===== */
.sky-dashboard .sky-section-kicker {
  color:#94a4aa;
  font-size:.67rem;
  font-weight:600;
  letter-spacing:.11em;
  text-transform:lowercase;
}

/* Profile is display-only on the notebook top. Editing lives in Account Settings. */
.sky-profile-card {
  grid-template-columns:auto minmax(0,1fr);
  min-height:148px;
  gap:22px;
  padding:26px 30px;
}
.sky-profile-card::after { left:30px; right:30px; }
.sky-profile-sparkles,
.sky-profile-card > .sky-quiet-button,
.sky-profile-editor { display:none!important; }
.sky-profile-avatar {
  width:78px;
  height:78px;
  box-shadow:none;
  border-color:rgba(92,131,151,.15);
}

/* Simple section names. */
.sky-panel-heading h2,
.sky-section-heading h2 {
  font-size:1.12rem!important;
  font-weight:700!important;
}
.sky-section-heading--simple {
  display:block;
  padding-bottom:10px;
}
.sky-panel--today .sky-today-row i {
  display:inline-grid;
  place-items:center;
  flex:0 0 22px;
  width:22px;
  height:22px;
  margin-right:9px;
  color:#86a8b4;
  font-style:normal;
}

/* Wing card reuses the exact three image assets from the Winged Light checker. */
.sky-progress-card--wing {
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:flex-end;
  min-height:190px;
  overflow:hidden;
  padding:22px;
  background:#eef5f7;
}
.sky-progress-card--wing::before {
  content:"";
  position:absolute;
  z-index:-2;
  inset:0;
  background-image:var(--sky-wing-bg, none);
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
  opacity:.93;
}
.sky-progress-card--wing::after {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  background:linear-gradient(to top, rgba(247,250,251,.97) 0%, rgba(247,250,251,.78) 34%, rgba(247,250,251,.16) 72%, rgba(247,250,251,.03) 100%);
}
.sky-progress-card--wing:not(.has-wing-image)::before {
  background-image:none;
}
.sky-wing-card-content {
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  gap:2px 12px;
  align-items:end;
}
.sky-wing-card-content .sky-card-label {
  grid-column:1 / -1;
  margin:0 0 2px;
  color:#5f7882;
  font-size:.72rem;
  font-weight:600;
}
.sky-wing-card-content .sky-wing-count {
  margin:0;
  color:#3f5d68;
  font-size:2rem;
  font-weight:700;
  line-height:1;
  text-shadow:0 1px 0 rgba(255,255,255,.7);
}
.sky-wing-card-content .sky-wing-level {
  align-self:end;
  margin:0;
  padding:0 0 2px;
  border:0;
  border-radius:0;
  background:none;
  color:#58727c;
  font-size:.76rem;
  font-weight:700;
  white-space:nowrap;
}
.sky-wing-visual,
.sky-wing-copy,
.sky-wing-detail { display:none!important; }

/* Profile image + profile editing are one clean account section. */
.sky-profile-settings-card { grid-column:1 / -1; }
.sky-profile-settings-grid {
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:30px;
  align-items:start;
  margin-top:16px;
}
.sky-profile-photo-setting {
  display:flex;
  flex-direction:column;
  align-items:center;
  min-width:0;
  padding:6px 0;
  text-align:center;
}
.sky-avatar-preview-wrap--simple {
  width:112px;
  height:112px;
  margin-bottom:16px;
}
.sky-avatar-preview-wrap--simple::before,
.sky-avatar-preview-wrap--simple::after,
.sky-avatar-preview-wrap--simple .sky-avatar-star { display:none!important; }
.sky-avatar-preview-wrap--simple .sky-account-avatar {
  width:112px;
  height:112px;
  border:1px solid rgba(92,131,151,.16);
  border-radius:50%;
  background:#f6fafb;
  box-shadow:none;
}
.sky-avatar-preview-wrap--simple .sky-account-avatar span {
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:#607984;
  font-size:1.5rem;
  font-weight:700;
}
.sky-profile-photo-setting .sky-avatar-file-button {
  margin-top:0!important;
}
.sky-profile-photo-setting .sky-avatar-file-name {
  width:100%;
  margin-top:8px;
}
.sky-profile-photo-setting .sky-account-inline-actions {
  justify-content:center;
  flex-wrap:wrap;
  margin-top:12px;
}
.sky-profile-settings-form .sky-editor-grid {
  margin:0;
}
.sky-profile-settings-form .sky-editor-actions {
  margin-top:4px;
}

@media (max-width:920px) {
  .sky-profile-settings-grid { grid-template-columns:150px minmax(0,1fr); gap:22px; }
  .sky-progress-card--wing { min-height:176px; }
}
@media (max-width:620px) {
  .sky-profile-card {
    grid-template-columns:58px minmax(0,1fr);
    gap:13px;
    min-height:0;
    padding:20px 17px;
  }
  .sky-profile-card::after { left:17px; right:17px; }
  .sky-profile-avatar { width:58px; height:58px; }
  .sky-profile-main h1 { font-size:1.4rem; }
  .sky-profile-settings-grid { grid-template-columns:1fr; gap:22px; }
  .sky-profile-photo-setting { border-bottom:1px solid var(--sky-skyline); padding-bottom:24px; }
  .sky-progress-card--wing {
    display:flex;
    min-height:165px;
    padding:18px;
  }
  .sky-progress-card--wing::before { background-size:cover; }
  .sky-wing-card-content .sky-wing-count { font-size:1.7rem; }
}


/* ===== v0.7: airy notebook polish / pendant / account settings ===== */
.sky-dashboard { --sky-paper:#fff; --sky-ink:#4d6670; --sky-muted:#8b9ca3; --sky-line:rgba(85,119,132,.14); }
.sky-profile-card,.sky-panel,.sky-progress-card,.sky-settings-shell { border-color:var(--sky-line)!important; box-shadow:0 10px 30px rgba(56,84,94,.045)!important; }
.sky-profile-card { position:relative; overflow:visible; background:linear-gradient(180deg,#fff 0%,#fbfdfd 100%)!important; }
.sky-profile-card.has-season-pendant { padding-right:112px; }
.sky-profile-pendant { position:absolute; z-index:4; top:18px; right:22px; width:76px; height:76px; display:grid; place-items:center; pointer-events:none; }
.sky-profile-pendant::before { content:""; position:absolute; inset:10px; border-radius:50%; background:rgba(222,238,243,.36); filter:blur(10px); }
.sky-profile-pendant img { position:relative; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 5px 9px rgba(62,92,103,.12)); }
.sky-dashboard-tabs { margin:18px 0 16px!important; border-bottom:1px solid var(--sky-line); gap:24px!important; }
.sky-dashboard-tabs button { min-width:0!important; padding:10px 2px 12px!important; border:0!important; border-radius:0!important; background:transparent!important; color:#91a0a6!important; box-shadow:none!important; }
.sky-dashboard-tabs button.is-active { color:#52717d!important; box-shadow:inset 0 -2px 0 #87aeb9!important; }

.sky-settings-shell { overflow:hidden; border:1px solid var(--sky-line); border-radius:22px; background:#fff; }
.sky-settings-header { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:28px 30px 24px; border-bottom:1px solid var(--sky-line); background:#fcfefe; }
.sky-settings-header span { display:block; margin-bottom:3px; color:#a1afb4; font-size:.65rem; letter-spacing:.12em; }
.sky-settings-header h2 { margin:0!important; padding:0!important; border:0!important; background:none!important; color:#4b6670!important; font-size:1.35rem!important; line-height:1.25!important; }
.sky-settings-header p { max-width:390px; margin:0; color:#96a4a9; font-size:.74rem; line-height:1.7; text-align:right; }
.sky-settings-section { display:grid; grid-template-columns:180px minmax(0,1fr); gap:28px; padding:30px; border-bottom:1px solid var(--sky-line); }
.sky-settings-section:last-of-type { border-bottom:0; }
.sky-settings-section-title { display:flex; gap:12px; align-items:flex-start; }
.sky-settings-section-title>span { display:grid; place-items:center; width:28px; height:28px; flex:0 0 28px; border:1px solid rgba(101,139,152,.16); border-radius:50%; color:#8aa6af; font-size:.62rem; }
.sky-settings-section-title h3 { margin:2px 0 3px!important; padding:0!important; border:0!important; background:none!important; color:#526b75!important; font-size:.94rem!important; }
.sky-settings-section-title p { margin:0; color:#a0acb1; font-size:.67rem; line-height:1.5; }
.sky-settings-profile-body { display:grid; grid-template-columns:150px minmax(0,1fr); gap:26px; min-width:0; }
.sky-settings-avatar-block { display:flex; flex-direction:column; align-items:center; text-align:center; }
.sky-settings-avatar-picker { position:relative; display:block; width:112px; height:112px; margin:0 0 12px; cursor:pointer; }
.sky-settings-avatar-picker .sky-account-avatar { display:block; width:112px!important; height:112px!important; overflow:hidden; border:1px solid rgba(91,128,142,.16)!important; border-radius:50%; background:#f6fafb; box-shadow:none!important; }
.sky-settings-avatar-picker .sky-account-avatar img { width:100%; height:100%; object-fit:cover; }
.sky-avatar-edit-mark { position:absolute; right:1px; bottom:7px; display:grid; place-items:center; width:28px; height:28px; border:3px solid #fff; border-radius:50%; background:#769ba7; color:#fff; font-size:1rem; line-height:1; }
.sky-settings-avatar-block>strong { color:#667c85; font-size:.74rem; }
.sky-settings-avatar-block .sky-avatar-file-name { width:100%; margin:5px 0 0; color:#a1adb2; font-size:.62rem; }
.sky-avatar-actions { display:flex; flex-direction:column; align-items:center; gap:5px; margin-top:9px; }
.sky-avatar-actions .sky-text-action { padding:0!important; border:0!important; background:none!important; color:#638793!important; font-size:.67rem!important; }
.sky-avatar-actions .sky-text-action.is-muted { color:#a0aaae!important; }
.sky-settings-field-grid,.sky-settings-account-grid,.sky-settings-password-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.sky-settings-field-grid label,.sky-settings-account-grid label,.sky-settings-password-grid label { display:block; margin:0!important; color:#6c8189!important; font-size:.69rem!important; font-weight:600!important; }
.sky-settings-field-grid label>span,.sky-settings-account-grid label>span,.sky-settings-password-grid label>span { display:block; margin:0 0 7px; }
.sky-settings-field-grid input,.sky-settings-field-grid textarea,.sky-settings-account-grid input,.sky-settings-password-grid input { width:100%!important; margin:0!important; padding:11px 12px!important; border:1px solid rgba(93,128,140,.17)!important; border-radius:10px!important; background:#fbfdfd!important; box-shadow:none!important; color:#4d646d!important; font-size:.82rem!important; }
.sky-settings-field-grid input:focus,.sky-settings-field-grid textarea:focus,.sky-settings-account-grid input:focus,.sky-settings-password-grid input:focus { outline:none; border-color:rgba(94,143,159,.42)!important; background:#fff!important; box-shadow:0 0 0 3px rgba(113,166,181,.09)!important; }
.sky-settings-field-grid small { display:block; margin-top:5px; color:#a4afb3; font-size:.6rem; font-weight:400; line-height:1.5; }
.sky-settings-field-wide { grid-column:1/-1; }
.sky-settings-account-grid .sky-settings-readonly { grid-column:1/-1; display:grid; grid-template-columns:120px 1fr auto; gap:14px; align-items:center; padding:11px 13px; border-radius:10px; background:#f8fbfb; color:#82949b; font-size:.68rem; }
.sky-settings-readonly strong { color:#586f78; font-size:.8rem; }
.sky-settings-readonly small { color:#a8b2b6; font-size:.6rem; }
.sky-settings-actions { display:flex; justify-content:flex-end; margin-top:16px; }
.sky-settings-actions .sky-primary-button { width:auto!important; min-width:150px; padding:10px 18px!important; border-radius:999px!important; box-shadow:none!important; font-size:.72rem!important; }
.sky-settings-logout { padding:18px 30px; border-top:1px solid var(--sky-line); background:#fcfefe; text-align:right; }
.sky-settings-logout a { color:#a78a8a; font-size:.7rem; text-decoration:none; }

@media(max-width:820px){
 .sky-settings-section{grid-template-columns:1fr;gap:18px}.sky-settings-section-title{align-items:center}.sky-settings-profile-body{grid-template-columns:130px minmax(0,1fr)}
}
@media(max-width:620px){
 .sky-profile-card.has-season-pendant{padding-right:78px}.sky-profile-pendant{top:14px;right:12px;width:54px;height:54px}
 .sky-settings-header{display:block;padding:22px 18px}.sky-settings-header p{margin-top:8px;text-align:left}.sky-settings-section{padding:23px 18px}.sky-settings-profile-body{grid-template-columns:1fr}.sky-settings-field-grid,.sky-settings-account-grid,.sky-settings-password-grid{grid-template-columns:1fr}.sky-settings-account-grid .sky-settings-readonly{grid-template-columns:1fr;gap:3px}.sky-settings-actions{justify-content:stretch}.sky-settings-actions .sky-primary-button{width:100%!important}.sky-settings-logout{padding:16px 18px}
}

/* ===== v0.7.1: tablet spacing / account polish ===== */
.sky-settings-shell {
  overflow: visible;
}
.sky-settings-header {
  padding: 34px 38px 30px;
}
.sky-settings-section {
  gap: 34px;
  padding: 38px;
}
.sky-settings-profile-body {
  gap: 32px;
}
.sky-settings-field-grid,
.sky-settings-account-grid,
.sky-settings-password-grid {
  gap: 22px 20px;
}
.sky-settings-field-grid label > span,
.sky-settings-account-grid label > span,
.sky-settings-password-grid label > span {
  margin-bottom: 9px;
}
.sky-settings-field-grid input,
.sky-settings-field-grid textarea,
.sky-settings-account-grid input,
.sky-settings-password-grid input {
  min-height: 46px;
  padding: 12px 14px !important;
}
.sky-settings-field-grid textarea {
  min-height: 104px;
}
.sky-settings-actions {
  margin-top: 22px;
}
.sky-settings-logout {
  padding: 23px 38px;
}

/* Keep the avatar edit mark outside the circular crop. */
.sky-settings-avatar-picker {
  isolation: isolate;
  overflow: visible !important;
}
.sky-settings-avatar-picker .sky-account-avatar {
  position: relative;
  z-index: 1;
}
.sky-avatar-edit-mark {
  z-index: 8;
  right: -3px;
  bottom: 5px;
  width: 30px;
  height: 30px;
  border-width: 3px;
  box-shadow: 0 4px 12px rgba(65, 97, 107, .16);
  pointer-events: none;
}

/* iPad / medium-width layout: avoid a cramped desktop-within-desktop form. */
@media (max-width: 1180px) and (min-width: 821px) {
  .sky-dashboard {
    width: min(100% - 44px, 1080px);
  }
  .sky-settings-header {
    align-items: flex-start;
    padding: 32px 34px 28px;
  }
  .sky-settings-header p {
    max-width: 330px;
  }
  .sky-settings-section {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 34px;
  }
  .sky-settings-section-title {
    align-items: center;
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(85,119,132,.10);
  }
  .sky-settings-section-title > span {
    width: 31px;
    height: 31px;
    flex-basis: 31px;
  }
  .sky-settings-section-title h3 {
    font-size: 1rem !important;
  }
  .sky-settings-profile-body {
    grid-template-columns: 170px minmax(0,1fr);
    gap: 34px;
  }
  .sky-settings-avatar-picker,
  .sky-settings-avatar-picker .sky-account-avatar {
    width: 124px !important;
    height: 124px !important;
  }
  .sky-settings-avatar-block {
    padding-top: 4px;
  }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    gap: 24px 20px;
  }
}

/* Portrait tablets / small iPads: give each field its own breathing room. */
@media (max-width: 900px) {
  .sky-settings-header {
    display: block;
    padding: 29px 28px 25px;
  }
  .sky-settings-header p {
    max-width: none;
    margin-top: 9px;
    text-align: left;
  }
  .sky-settings-section {
    grid-template-columns: 1fr;
    gap: 23px;
    padding: 30px 28px;
  }
  .sky-settings-section-title {
    align-items: center;
  }
  .sky-settings-profile-body {
    grid-template-columns: 148px minmax(0,1fr);
    gap: 28px;
  }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .sky-settings-field-wide {
    grid-column: auto;
  }
  .sky-settings-account-grid .sky-settings-readonly {
    grid-template-columns: 110px minmax(0,1fr);
  }
  .sky-settings-account-grid .sky-settings-readonly small {
    grid-column: 2;
  }
}

@media (max-width: 680px) {
  .sky-dashboard {
    width: min(100% - 22px, 1180px);
  }
  .sky-settings-shell {
    border-radius: 18px;
  }
  .sky-settings-header {
    padding: 25px 20px 21px;
  }
  .sky-settings-section {
    gap: 22px;
    padding: 27px 20px;
  }
  .sky-settings-profile-body {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .sky-settings-avatar-block {
    padding: 2px 0 5px;
  }
  .sky-settings-avatar-picker,
  .sky-settings-avatar-picker .sky-account-avatar {
    width: 118px !important;
    height: 118px !important;
  }
  .sky-avatar-edit-mark {
    right: -2px;
    bottom: 6px;
  }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    gap: 19px;
  }
  .sky-settings-account-grid .sky-settings-readonly {
    grid-template-columns: 1fr;
    gap: 5px;
    padding: 14px;
  }
  .sky-settings-account-grid .sky-settings-readonly small {
    grid-column: auto;
  }
  .sky-settings-actions {
    margin-top: 24px;
  }
  .sky-settings-logout {
    padding: 20px;
  }
}

/* ===== v0.7.2: settings redesign ===== */
/* The dashboard no longer uses a header/tab switcher. Settings are opened quietly from the profile card. */
.sky-dashboard-tabs { display:none !important; }
.sky-profile-card { position:relative; }
.sky-profile-settings-link {
  position:absolute;
  right:18px;
  bottom:15px;
  z-index:3;
  display:inline-flex !important;
  align-items:center;
  gap:5px;
  width:auto !important;
  min-width:0 !important;
  padding:6px 9px !important;
  border:0 !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#899ba2 !important;
  font-size:.67rem !important;
  font-weight:500 !important;
  line-height:1 !important;
}
.sky-profile-settings-link:hover { color:#5f7d88 !important; background:rgba(112,153,166,.07) !important; }
.sky-profile-settings-link span:first-child { font-size:.78rem; opacity:.8; }

/* A single calm column works at desktop, iPad and phone widths. */
.sky-settings-shell {
  width:min(100%, 780px);
  margin:26px auto 0;
  overflow:visible !important;
  border:1px solid rgba(83,118,130,.11) !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 12px 34px rgba(55,82,91,.045) !important;
}
.sky-settings-header {
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:24px !important;
  padding:30px 34px 27px !important;
  border-bottom:1px solid rgba(83,118,130,.09) !important;
  background:transparent !important;
}
.sky-settings-header > div { min-width:0; }
.sky-settings-header .sky-settings-eyebrow {
  margin:0 0 5px !important;
  color:#9aabb1 !important;
  font-size:.62rem !important;
  letter-spacing:.12em !important;
  line-height:1.2 !important;
}
.sky-settings-header h2 {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  color:#4e6973 !important;
  font-size:1.22rem !important;
  line-height:1.35 !important;
}
.sky-settings-header .sky-settings-lead {
  max-width:none !important;
  margin:7px 0 0 !important;
  color:#9aa8ad !important;
  font-size:.72rem !important;
  line-height:1.65 !important;
  text-align:left !important;
}
.sky-settings-close {
  width:auto !important;
  flex:0 0 auto;
  margin-top:4px !important;
  padding:7px 10px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#f5f9fa !important;
  box-shadow:none !important;
  color:#718991 !important;
  font-size:.66rem !important;
  font-weight:500 !important;
}
.sky-settings-close:hover { background:#edf5f6 !important; color:#52717c !important; }

.sky-settings-section {
  display:block !important;
  padding:34px !important;
  border-bottom:1px solid rgba(83,118,130,.08) !important;
}
.sky-settings-section-title {
  display:block !important;
  margin:0 0 24px !important;
  padding:0 !important;
  border:0 !important;
}
.sky-settings-section-title > span { display:none !important; }
.sky-settings-section-title h3 {
  margin:0 0 5px !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  color:#526c75 !important;
  font-size:.94rem !important;
  line-height:1.4 !important;
}
.sky-settings-section-title p {
  margin:0 !important;
  color:#9da9ad !important;
  font-size:.67rem !important;
  line-height:1.55 !important;
}

/* Profile image is a small row, not a large column beside the form. */
.sky-settings-profile-body {
  display:block !important;
  min-width:0 !important;
}
.sky-settings-avatar-block {
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  grid-template-rows:auto auto auto !important;
  column-gap:18px !important;
  row-gap:3px !important;
  align-items:center !important;
  margin:0 0 30px !important;
  padding:0 0 26px !important;
  border-bottom:1px solid rgba(83,118,130,.075) !important;
  text-align:left !important;
}
.sky-settings-avatar-picker {
  grid-row:1 / 4;
  position:relative !important;
  display:block !important;
  width:76px !important;
  height:76px !important;
  margin:0 !important;
  overflow:visible !important;
  isolation:isolate;
}
.sky-settings-avatar-picker .sky-account-avatar {
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  width:76px !important;
  height:76px !important;
  overflow:hidden !important;
  border:1px solid rgba(91,128,142,.14) !important;
  border-radius:50% !important;
  background:#f6fafb !important;
}
.sky-avatar-edit-mark {
  position:absolute !important;
  z-index:20 !important;
  right:-2px !important;
  bottom:1px !important;
  display:grid !important;
  place-items:center !important;
  width:25px !important;
  height:25px !important;
  border:3px solid #fff !important;
  border-radius:50% !important;
  background:#789ba6 !important;
  box-shadow:0 3px 9px rgba(65,97,107,.14) !important;
  color:#fff !important;
  font-size:.87rem !important;
  line-height:1 !important;
  pointer-events:none !important;
}
.sky-settings-avatar-block > strong {
  align-self:end !important;
  color:#617983 !important;
  font-size:.73rem !important;
}
.sky-settings-avatar-block .sky-avatar-file-name {
  width:auto !important;
  margin:0 !important;
  color:#9ba9ae !important;
  font-size:.62rem !important;
  line-height:1.45 !important;
}
.sky-avatar-actions {
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:12px !important;
  margin:4px 0 0 !important;
}
.sky-avatar-actions .sky-text-action {
  width:auto !important;
  min-width:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  color:#648893 !important;
  font-size:.63rem !important;
}

.sky-profile-settings-form,
.sky-settings-section > .sky-settings-account-grid,
.sky-settings-section > .sky-settings-password-grid,
.sky-settings-section > .sky-settings-actions {
  max-width:650px;
}
.sky-settings-field-grid,
.sky-settings-account-grid,
.sky-settings-password-grid {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:22px 18px !important;
}
.sky-settings-password-grid label:first-child { grid-column:1 / -1; }
.sky-settings-field-grid label,
.sky-settings-account-grid label,
.sky-settings-password-grid label {
  margin:0 !important;
  color:#687e86 !important;
  font-size:.68rem !important;
  font-weight:600 !important;
}
.sky-settings-field-grid label > span,
.sky-settings-account-grid label > span,
.sky-settings-password-grid label > span {
  margin:0 0 8px !important;
}
.sky-settings-field-grid input,
.sky-settings-field-grid textarea,
.sky-settings-account-grid input,
.sky-settings-password-grid input {
  min-height:44px !important;
  padding:11px 13px !important;
  border:1px solid rgba(91,126,138,.15) !important;
  border-radius:9px !important;
  background:#fbfdfd !important;
  box-shadow:none !important;
  color:#4e666f !important;
  font-size:.8rem !important;
}
.sky-settings-field-grid textarea { min-height:96px !important; resize:vertical; }
.sky-settings-field-wide { grid-column:1 / -1 !important; }
.sky-settings-account-grid .sky-settings-readonly {
  grid-column:1 / -1 !important;
  display:flex !important;
  align-items:baseline !important;
  gap:12px !important;
  padding:0 0 17px !important;
  border:0 !important;
  border-bottom:1px solid rgba(83,118,130,.075) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#8d9ca1 !important;
  font-size:.65rem !important;
}
.sky-settings-readonly strong { color:#5c747d !important; font-size:.76rem !important; }
.sky-settings-readonly small { margin-left:auto; color:#a6b0b4 !important; font-size:.58rem !important; }
.sky-settings-actions {
  display:flex !important;
  justify-content:flex-start !important;
  margin-top:22px !important;
}
.sky-settings-actions .sky-primary-button {
  width:auto !important;
  min-width:138px !important;
  padding:10px 17px !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-size:.68rem !important;
}
.sky-settings-logout {
  padding:20px 34px !important;
  border-top:0 !important;
  background:#fcfefe !important;
  text-align:left !important;
}
.sky-settings-logout a { color:#a38b8b !important; font-size:.66rem !important; }

/* One breakpoint only: stack fields when they genuinely need it. */
@media (max-width:700px) {
  .sky-profile-settings-link { right:12px; bottom:11px; }
  .sky-settings-shell { margin-top:18px; border-radius:17px !important; }
  .sky-settings-header { padding:24px 20px 21px !important; }
  .sky-settings-close span { display:none; }
  .sky-settings-section { padding:27px 20px !important; }
  .sky-settings-section-title { margin-bottom:20px !important; }
  .sky-settings-avatar-block { grid-template-columns:68px minmax(0,1fr) !important; column-gap:15px !important; margin-bottom:25px !important; padding-bottom:22px !important; }
  .sky-settings-avatar-picker,
  .sky-settings-avatar-picker .sky-account-avatar { width:68px !important; height:68px !important; }
  .sky-avatar-edit-mark { width:24px !important; height:24px !important; }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid { grid-template-columns:1fr !important; gap:18px !important; }
  .sky-settings-field-wide,
  .sky-settings-password-grid label:first-child { grid-column:auto !important; }
  .sky-settings-account-grid .sky-settings-readonly { display:grid !important; grid-template-columns:1fr !important; gap:4px !important; }
  .sky-settings-readonly small { margin-left:0 !important; }
  .sky-settings-actions .sky-primary-button { width:100% !important; }
  .sky-settings-logout { padding:18px 20px !important; }
}

/* ===== v0.8: self-introduction card direction ===== */
.sky-dashboard {
  --sky-card-bg: rgba(251,253,255,.96);
  --sky-card-soft: rgba(239,245,249,.72);
  --sky-card-line: rgba(73,94,116,.14);
  width: min(1120px, calc(100% - 28px));
  margin-top: 28px;
}

/* Profile = web version of a Sky self-introduction card */
.sky-intro-card {
  position: relative;
  overflow: hidden;
  padding: clamp(24px, 3.2vw, 38px);
  border: 1px solid var(--sky-card-line);
  border-radius: 24px;
  background:
    radial-gradient(circle at 84% 16%, rgba(207,225,236,.22), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,250,252,.96));
  box-shadow: 0 12px 36px rgba(42,66,88,.055);
}
.sky-intro-card::after {
  content: '';
  position: absolute;
  left: clamp(24px,3.2vw,38px);
  right: clamp(24px,3.2vw,38px);
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(111,148,169,.38), transparent);
}
.sky-intro-card__top {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 88px;
  padding-right: 86px;
}
.sky-intro-card__identity { display:flex; align-items:center; gap:18px; min-width:0; }
.sky-intro-card .sky-profile-avatar {
  width: 76px;
  height: 76px;
  flex: 0 0 auto;
  border: 1px solid rgba(62,87,107,.15);
  box-shadow: 0 5px 16px rgba(55,76,95,.07);
  background: #fff;
}
.sky-intro-card__name { min-width:0; }
.sky-intro-card__label {
  display:block;
  margin-bottom:5px;
  color:#8a96a1;
  font-size:.7rem;
  letter-spacing:.08em;
}
.sky-intro-card__name h1 {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  color:var(--sky-deep) !important;
  text-align:left !important;
  text-shadow:none !important;
  font-size:clamp(1.45rem,2.7vw,2rem) !important;
  line-height:1.25 !important;
}
.sky-intro-card__name h1::before,.sky-intro-card__name h1::after { content:none !important; display:none !important; }
.sky-intro-card__sns { margin:5px 0 0; color:#8793a0; font-size:.78rem; }
.sky-profile-pendant {
  position:absolute !important;
  z-index:3;
  top:0 !important;
  right:0 !important;
  width:68px !important;
  height:68px !important;
  display:grid;
  place-items:center;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.sky-profile-pendant::before {
  content:'';
  position:absolute;
  inset:8px;
  border-radius:50%;
  background:rgba(205,224,235,.28);
  filter:blur(8px);
}
.sky-profile-pendant img { position:relative; z-index:1; max-width:100%; max-height:100%; object-fit:contain; }

.sky-intro-card__grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  margin-top:24px;
  border-top:1px solid var(--sky-card-line);
  border-left:1px solid var(--sky-card-line);
}
.sky-intro-field {
  min-width:0;
  min-height:82px;
  padding:14px 15px;
  border-right:1px solid var(--sky-card-line);
  border-bottom:1px solid var(--sky-card-line);
  background:rgba(255,255,255,.48);
}
.sky-intro-field > span {
  display:block;
  margin-bottom:8px;
  color:#8995a0;
  font-size:.66rem;
  line-height:1.4;
}
.sky-intro-field > strong {
  display:block;
  color:#45596c;
  font-size:.8rem;
  font-weight:600;
  line-height:1.6;
  overflow-wrap:anywhere;
}
.sky-intro-field.is-empty > strong { color:#b5bdc5; font-weight:400; }
.sky-intro-card__bio {
  display:grid;
  grid-template-columns:110px 1fr;
  gap:16px;
  margin-top:16px;
  padding:17px 18px;
  border:1px solid var(--sky-card-line);
  background:rgba(255,255,255,.5);
}
.sky-intro-card__bio > span { color:#8995a0; font-size:.68rem; }
.sky-intro-card__bio p { margin:0; color:#546779; font-size:.82rem; line-height:1.8; }
.sky-intro-card__actions {
  display:flex;
  justify-content:flex-end;
  gap:9px;
  margin-top:16px;
}
.sky-card-action {
  width:auto !important;
  min-width:76px;
  padding:8px 14px !important;
  border:1px solid var(--sky-card-line) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.78) !important;
  color:#607386 !important;
  box-shadow:none !important;
  font-size:.72rem !important;
}
.sky-card-action:hover { background:#fff !important; }

/* Main cards: simpler, flatter, less game-status-like */
.sky-dashboard-sections { margin-top:22px; gap:18px; }
.sky-dashboard-sections > .sky-panel--summary {
  min-height:330px;
  padding:26px 28px !important;
  border-radius:20px;
  background:rgba(255,255,255,.82);
  box-shadow:none;
}
.sky-section-kicker { margin:0 0 4px; color:#8a97a3; font-size:.67rem; font-weight:600; letter-spacing:.11em; text-transform:lowercase; }
.sky-panel-heading h2,.sky-section-heading h2 { color:#52677a !important; font-size:1.08rem !important; font-weight:700 !important; }
.sky-panel-mark { display:none !important; }
.sky-progress-section { margin-top:22px; }

/* Settings: tabs are back, but only inside settings */
.sky-settings-shell {
  width:min(900px,100%);
  margin:24px auto 0;
  padding:0;
  border:1px solid var(--sky-card-line);
  border-radius:24px;
  background:rgba(255,255,255,.95);
  overflow:hidden;
  box-shadow:0 12px 38px rgba(42,66,88,.05);
}
.sky-settings-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:26px 30px 20px;
  border-bottom:1px solid var(--sky-card-line);
}
.sky-settings-header h2 { margin:0 !important; padding:0 !important; border:0 !important; background:none !important; color:#52677a !important; font-size:1.3rem !important; text-align:left !important; text-shadow:none !important; }
.sky-settings-header h2::before,.sky-settings-header h2::after { content:none !important; }
.sky-settings-eyebrow { margin:0 0 3px; color:#98a3ad; font-size:.65rem; letter-spacing:.12em; }
.sky-settings-close {
  width:auto !important;
  padding:8px 13px !important;
  border:1px solid var(--sky-card-line) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#6a7d8e !important;
  box-shadow:none !important;
  font-size:.7rem !important;
}
.sky-settings-tabs {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  padding:0 30px;
  border-bottom:1px solid var(--sky-card-line);
}
.sky-settings-tabs button {
  position:relative;
  width:100% !important;
  padding:16px 8px 14px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#98a3ad !important;
  box-shadow:none !important;
  font-size:.76rem !important;
}
.sky-settings-tabs button::after { content:''; position:absolute; left:20%; right:20%; bottom:-1px; height:2px; background:transparent; }
.sky-settings-tabs button.is-active { color:#506579 !important; font-weight:700; }
.sky-settings-tabs button.is-active::after { background:#8ca8b8; }
.sky-settings-panel { padding:30px; }
.sky-settings-panel[hidden] { display:none !important; }
.sky-settings-avatar-row {
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:center;
  margin-bottom:28px;
  padding-bottom:26px;
  border-bottom:1px solid var(--sky-card-line);
}
.sky-settings-avatar-picker { position:relative; display:block; width:82px; height:82px; overflow:visible !important; cursor:pointer; }
.sky-account-avatar { display:grid; place-items:center; width:82px; height:82px; overflow:hidden; border:1px solid var(--sky-card-line); border-radius:50%; background:#f6f9fb; }
.sky-avatar-edit-mark {
  position:absolute !important;
  z-index:30 !important;
  right:-2px !important;
  bottom:2px !important;
  display:grid !important;
  place-items:center;
  width:26px !important;
  height:26px !important;
  border:3px solid #fff !important;
  border-radius:50% !important;
  background:#7895a6 !important;
  color:#fff !important;
  font-size:16px !important;
  line-height:1 !important;
  box-shadow:0 3px 8px rgba(55,76,95,.16) !important;
}
.sky-avatar-file { position:absolute !important; width:1px !important; height:1px !important; opacity:0 !important; pointer-events:none; }
.sky-settings-avatar-row strong { display:block; color:#53687a; font-size:.82rem; }
.sky-avatar-file-name { display:block; margin-top:4px; color:#97a2ac; font-size:.68rem; }
.sky-avatar-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:7px; }
.sky-text-action { text-decoration:none !important; color:#758897 !important; }

.sky-settings-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 24px; }
.sky-settings-field-grid label,.sky-settings-account-grid label,.sky-settings-password-grid label {
  display:block;
  margin:0;
  color:#65798b;
  font-size:.72rem;
  font-weight:600;
}
.sky-settings-field-grid input,.sky-settings-field-grid textarea,.sky-settings-field-grid select,
.sky-settings-account-grid input,.sky-settings-password-grid input {
  width:100%;
  margin-top:7px;
  padding:11px 12px;
  border:1px solid rgba(77,99,119,.16);
  border-radius:10px;
  background:#fbfcfd;
  color:#455a6c;
  box-shadow:none;
  outline:none;
  font:inherit;
}
.sky-settings-field-grid input:focus,.sky-settings-field-grid textarea:focus,.sky-settings-field-grid select:focus,
.sky-settings-account-grid input:focus,.sky-settings-password-grid input:focus { border-color:rgba(113,147,166,.6); background:#fff; }
.sky-settings-field-grid small { display:block; margin-top:5px; color:#a1abb4; font-size:.62rem; font-weight:400; }
.sky-settings-field-wide { grid-column:1/-1; }
.sky-settings-actions { display:flex; justify-content:flex-end; margin-top:28px; }
.sky-settings-actions .sky-primary-button { width:auto; min-width:180px; min-height:43px; background:#607e90 !important; border-color:#607e90 !important; }
.sky-settings-account-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 24px; }
.sky-settings-readonly { grid-column:1/-1; display:grid; grid-template-columns:110px 1fr; gap:5px 18px; padding:15px 16px; border:1px solid var(--sky-card-line); border-radius:12px; background:#f8fafb; }
.sky-settings-readonly span,.sky-settings-readonly small { color:#95a0aa; font-size:.68rem; }
.sky-settings-readonly strong { color:#516679; font-size:.8rem; }
.sky-settings-readonly small { grid-column:2; }
.sky-settings-password-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 24px; }
.sky-settings-password-grid label:first-child { grid-column:1/-1; }
.sky-settings-logout { margin-top:34px; padding-top:22px; border-top:1px solid var(--sky-card-line); text-align:right; }
.sky-settings-logout a { color:#9b7474; font-size:.7rem; }

/* public sharing page */
.sky-public-profile { width:min(980px,calc(100% - 28px)); margin:32px auto 64px; color:var(--sky-ink); }
.sky-public-profile__collection { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:14px; }
.sky-public-profile__collection > div { display:flex; justify-content:space-between; align-items:center; padding:15px 17px; border:1px solid var(--sky-card-line); border-radius:14px; background:rgba(255,255,255,.88); }
.sky-public-profile__collection span { color:#8995a0; font-size:.68rem; }
.sky-public-profile__collection strong { color:#52677a; font-size:.9rem; }
.sky-public-profile-empty { width:min(680px,calc(100% - 28px)); margin:50px auto; padding:30px; text-align:center; color:#82909c; }

@media (max-width: 900px) {
  .sky-intro-card__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sky-intro-card__bio { grid-template-columns:1fr; gap:7px; }
  .sky-settings-shell { width:100%; }
}
@media (max-width: 700px) {
  .sky-dashboard { width:min(100% - 18px,1120px); margin-top:14px; }
  .sky-intro-card { padding:22px 18px; border-radius:18px; }
  .sky-intro-card__top { padding-right:58px; }
  .sky-intro-card__identity { gap:12px; }
  .sky-intro-card .sky-profile-avatar { width:60px; height:60px; }
  .sky-profile-pendant { width:52px !important; height:52px !important; }
  .sky-intro-card__grid { margin-top:20px; }
  .sky-intro-field { min-height:72px; padding:12px; }
  .sky-intro-card__actions { justify-content:stretch; }
  .sky-card-action { flex:1; }
  .sky-settings-header { padding:22px 18px 17px; }
  .sky-settings-tabs { padding:0 12px; }
  .sky-settings-panel { padding:22px 18px 26px; }
  .sky-settings-field-grid,.sky-settings-account-grid,.sky-settings-password-grid { grid-template-columns:1fr; gap:17px; }
  .sky-settings-field-wide,.sky-settings-readonly,.sky-settings-password-grid label:first-child { grid-column:auto; }
  .sky-settings-readonly { grid-template-columns:1fr; }
  .sky-settings-readonly small { grid-column:auto; }
  .sky-settings-actions .sky-primary-button { width:100%; }
  .sky-public-profile__collection { grid-template-columns:1fr; }
}
@media (max-width: 430px) {
  .sky-intro-card__grid { grid-template-columns:1fr; border-left:0; }
  .sky-intro-field { display:grid; grid-template-columns:110px 1fr; align-items:center; min-height:0; border-left:1px solid var(--sky-card-line); }
  .sky-intro-field > span { margin:0; }
}

/* ===== v0.8.1: Dashboard / Account Settings only ===== */
.sky-main-tabs {
  display:flex;
  align-items:center;
  gap:30px;
  margin:0 0 18px;
  padding:0 2px;
  border-bottom:1px solid rgba(82,112,124,.12);
}
.sky-main-tabs button {
  position:relative;
  width:auto !important;
  min-width:0 !important;
  padding:12px 2px 13px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#96a4aa !important;
  box-shadow:none !important;
  font-size:.78rem !important;
  font-weight:600 !important;
  letter-spacing:.02em;
}
.sky-main-tabs button::after {
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:2px;
  border-radius:2px;
  background:transparent;
}
.sky-main-tabs button.is-active { color:#506b75 !important; }
.sky-main-tabs button.is-active::after { background:#8eafb9; }

/* Compact dashboard profile: identity, not a questionnaire. */
.sky-profile-summary {
  position:relative;
  display:grid;
  grid-template-columns:76px minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  min-height:150px;
  padding:27px 30px;
  border:1px solid rgba(82,112,124,.12);
  border-radius:21px;
  background:rgba(255,255,255,.88);
  box-shadow:0 10px 30px rgba(49,74,84,.04);
}
.sky-profile-summary__avatar {
  width:76px !important;
  height:76px !important;
  border:1px solid rgba(82,112,124,.12) !important;
  background:#f9fbfb !important;
  box-shadow:none !important;
}
.sky-profile-summary__body { min-width:0; padding-right:72px; }
.sky-profile-summary__name-row h1 {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  color:#49636d !important;
  text-align:left !important;
  text-shadow:none !important;
  font-size:clamp(1.35rem,2.4vw,1.8rem) !important;
  line-height:1.3 !important;
}
.sky-profile-summary__name-row h1::before,
.sky-profile-summary__name-row h1::after { content:none !important; display:none !important; }
.sky-profile-summary__sns { margin:4px 0 0; color:#98a4a9; font-size:.7rem; }
.sky-profile-summary__meta {
  display:flex;
  flex-wrap:wrap;
  gap:5px 17px;
  margin-top:10px;
  color:#71868e;
  font-size:.73rem;
  line-height:1.6;
}
.sky-profile-summary__meta span { position:relative; }
.sky-profile-summary__meta span + span::before {
  content:'·';
  position:absolute;
  left:-10px;
  color:#bdc7ca;
}
.sky-profile-summary__bio {
  max-width:720px;
  margin:11px 0 0;
  color:#647980;
  font-size:.78rem;
  line-height:1.75;
}
.sky-profile-summary .sky-profile-pendant {
  top:18px !important;
  right:22px !important;
  width:56px !important;
  height:56px !important;
}
.sky-profile-summary__actions {
  align-self:end;
  padding-bottom:1px;
}
.sky-profile-summary__actions .sky-card-action {
  min-width:72px;
  padding:7px 13px !important;
  color:#71858d !important;
  border-color:rgba(82,112,124,.12) !important;
}

/* Main dashboard breathes more. */
.sky-dashboard-sections { margin-top:18px !important; gap:18px !important; }
.sky-dashboard-sections > .sky-panel--summary {
  min-height:318px !important;
  padding:27px 29px !important;
}
.sky-progress-section { margin-top:24px !important; }

/* Account settings: no Settings header, no nested tabs, just readable sections. */
.sky-account-settings {
  width:min(920px,100%);
  margin:0 auto;
  display:grid;
  gap:18px;
}
.sky-account-section {
  padding:30px 32px;
  border:1px solid rgba(82,112,124,.12);
  border-radius:20px;
  background:rgba(255,255,255,.9);
  box-shadow:0 9px 28px rgba(49,74,84,.035);
}
.sky-account-section__heading {
  margin-bottom:25px;
  padding-bottom:17px;
  border-bottom:1px solid rgba(82,112,124,.09);
}
.sky-account-section__heading h2 {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  color:#536d76 !important;
  text-align:left !important;
  text-shadow:none !important;
  font-size:1rem !important;
  line-height:1.4 !important;
}
.sky-account-section__heading h2::before,
.sky-account-section__heading h2::after { content:none !important; display:none !important; }
.sky-account-section__heading p {
  margin:5px 0 0;
  color:#98a4a9;
  font-size:.67rem;
  line-height:1.65;
}
.sky-account-profile-row { margin-bottom:27px; }
.sky-account-section .sky-settings-avatar-row {
  margin:0;
  padding:0 0 25px;
  border-bottom:1px solid rgba(82,112,124,.08);
}
.sky-account-section .sky-settings-field-grid,
.sky-account-section .sky-settings-account-grid,
.sky-account-section .sky-settings-password-grid {
  gap:22px 24px;
}
.sky-account-section .sky-settings-actions { margin-top:26px !important; }
.sky-account-section .sky-settings-actions .sky-primary-button {
  min-width:165px !important;
  padding:10px 19px !important;
  background:#6f8e99 !important;
  border-color:#6f8e99 !important;
  box-shadow:none !important;
}
.sky-account-section .sky-settings-logout {
  margin-top:27px;
  padding-top:18px;
}

@media (max-width: 900px) {
  .sky-account-settings { width:100%; }
  .sky-profile-summary { grid-template-columns:68px minmax(0,1fr) auto; padding:24px 25px; }
  .sky-profile-summary__avatar { width:68px !important; height:68px !important; }
  .sky-profile-summary__body { padding-right:54px; }
  .sky-profile-summary .sky-profile-pendant { width:48px !important; height:48px !important; top:17px !important; right:18px !important; }
}

@media (max-width: 700px) {
  .sky-main-tabs { gap:22px; margin-bottom:14px; overflow-x:auto; scrollbar-width:none; }
  .sky-main-tabs::-webkit-scrollbar { display:none; }
  .sky-profile-summary {
    grid-template-columns:58px minmax(0,1fr);
    gap:14px;
    padding:20px 18px;
    border-radius:17px;
  }
  .sky-profile-summary__avatar { width:58px !important; height:58px !important; }
  .sky-profile-summary__body { padding-right:43px; }
  .sky-profile-summary__meta { display:grid; gap:2px; margin-top:8px; }
  .sky-profile-summary__meta span + span::before { content:none; }
  .sky-profile-summary__bio { margin-top:9px; }
  .sky-profile-summary .sky-profile-pendant { width:40px !important; height:40px !important; top:16px !important; right:15px !important; }
  .sky-profile-summary__actions { grid-column:1 / -1; justify-self:end; margin-top:-2px; }
  .sky-account-section { padding:25px 19px; border-radius:17px; }
  .sky-account-section__heading { margin-bottom:21px; padding-bottom:14px; }
  .sky-account-section .sky-settings-field-grid,
  .sky-account-section .sky-settings-account-grid,
  .sky-account-section .sky-settings-password-grid { grid-template-columns:1fr !important; gap:18px !important; }
  .sky-account-section .sky-settings-field-wide,
  .sky-account-section .sky-settings-readonly,
  .sky-account-section .sky-settings-password-grid label:first-child { grid-column:auto !important; }
  .sky-account-section .sky-settings-actions .sky-primary-button { width:100% !important; min-width:0 !important; }
}


/* ===== v0.8.3: profile + separate play style band ===== */
.sky-profile-summary {
  align-items:center;
}
.sky-profile-summary__avatar {
  align-self:center;
}
.sky-profile-summary__body {
  padding-right:72px;
}

.sky-playstyle-strip {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:stretch;
  gap:0;
  margin-top:12px;
  border:1px solid rgba(82,112,124,.10);
  border-radius:16px;
  background:rgba(249,252,252,.78);
  overflow:hidden;
}
.sky-playstyle-strip__lead {
  display:flex;
  align-items:center;
  padding:15px 18px;
  border-right:1px solid rgba(82,112,124,.09);
  background:rgba(232,241,243,.46);
}
.sky-playstyle-strip__lead span {
  color:#7b929a;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.09em;
  white-space:nowrap;
}
.sky-playstyle-strip__items {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  min-width:0;
}
.sky-playstyle-item {
  position:relative;
  min-width:0;
  padding:13px 16px 12px;
  text-align:center;
}
.sky-playstyle-item + .sky-playstyle-item::before {
  content:'';
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:1px;
  background:rgba(82,112,124,.08);
}
.sky-playstyle-item small,
.sky-playstyle-item strong {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sky-playstyle-item small {
  margin-bottom:4px;
  color:#a0adb1;
  font-size:.57rem;
  font-weight:600;
}
.sky-playstyle-item strong {
  color:#5d767f;
  font-size:.74rem;
  font-weight:650;
}

@media (max-width:980px) {
  .sky-playstyle-strip {
    grid-template-columns:1fr;
  }
  .sky-playstyle-strip__lead {
    padding:10px 15px 8px;
    border-right:0;
    border-bottom:1px solid rgba(82,112,124,.07);
    background:transparent;
  }
  .sky-playstyle-strip__items {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .sky-playstyle-item:nth-child(4)::before { content:none; }
  .sky-playstyle-item:nth-child(n+4) {
    border-top:1px solid rgba(82,112,124,.07);
  }
}

@media (max-width:640px) {
  .sky-profile-summary__body { padding-right:42px; }
  .sky-playstyle-strip {
    margin-top:10px;
    border-radius:14px;
  }
  .sky-playstyle-strip__lead { padding:9px 13px 7px; }
  .sky-playstyle-strip__items {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .sky-playstyle-item {
    padding:11px 12px 10px;
    text-align:left;
  }
  .sky-playstyle-item:nth-child(odd)::before { content:none; }
  .sky-playstyle-item:nth-child(n+3) { border-top:1px solid rgba(82,112,124,.07); }
  .sky-playstyle-item strong { font-size:.72rem; }
}

/* ===== v0.9.0: personal Sky dashboard ===== */
.sky-dashboard{--sky-ink:#49656f;--sky-muted:#8ca0a7;--sky-line:rgba(73,101,111,.12);--sky-paper:#fff;--sky-wash:#f6fafb;max-width:1120px;margin:0 auto;padding:8px 0 42px}
.sky-main-tabs{display:flex;gap:8px;width:max-content;margin:0 auto 22px;padding:5px;border:1px solid var(--sky-line);border-radius:999px;background:rgba(255,255,255,.82);box-shadow:0 8px 24px rgba(55,80,90,.045)}
.sky-main-tabs button{min-width:132px;padding:9px 16px!important;border:0!important;border-radius:999px!important;background:transparent!important;color:#82969d!important;font-size:.76rem!important;font-weight:650!important;box-shadow:none!important}
.sky-main-tabs button.is-active{background:#eef5f6!important;color:var(--sky-ink)!important}

.sky-profile-summary--hero{position:relative;display:grid;grid-template-columns:104px minmax(0,1fr) auto;gap:24px;align-items:center;min-height:218px;padding:30px 32px 28px;border:1px solid var(--sky-line);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(249,252,252,.94));box-shadow:0 16px 44px rgba(46,73,84,.055);overflow:hidden}
.sky-profile-summary__sky{position:absolute;inset:0;pointer-events:none;opacity:.62}.sky-profile-summary__sky::before{content:"";position:absolute;width:310px;height:310px;right:-110px;top:-180px;border:1px solid rgba(101,139,151,.12);border-radius:50%}.sky-profile-summary__sky::after{content:"";position:absolute;width:210px;height:210px;right:-60px;top:-122px;border:1px solid rgba(101,139,151,.09);border-radius:50%}.sky-profile-summary__sky i{position:absolute;width:3px;height:3px;border-radius:50%;background:#a5bac1;box-shadow:0 0 0 3px rgba(165,186,193,.08)}.sky-profile-summary__sky i:nth-child(1){left:42%;top:22%}.sky-profile-summary__sky i:nth-child(2){left:58%;top:67%}.sky-profile-summary__sky i:nth-child(3){right:18%;bottom:18%}.sky-profile-summary__sky i:nth-child(4){left:28%;bottom:16%}
.sky-profile-summary__avatar{position:relative;z-index:2;width:96px!important;height:96px!important;border:5px solid rgba(255,255,255,.98);box-shadow:0 9px 24px rgba(49,75,84,.11);background:#eef3f4!important}
.sky-profile-summary__body{position:relative;z-index:2;padding:0!important}.sky-profile-summary__mini{display:block;margin-bottom:4px;color:#a3b2b7;font-size:.55rem;font-weight:700;letter-spacing:.17em}.sky-profile-summary__name-row h1{margin:0!important;color:#3f5e68!important;font-size:1.62rem!important;letter-spacing:.01em!important;text-align:left!important}.sky-profile-summary__sns{margin-top:3px!important}
.sky-profile-birth{display:inline-flex;align-items:center;gap:7px;margin-top:11px;padding:6px 10px;border:1px solid rgba(104,137,147,.10);border-radius:999px;background:rgba(237,245,247,.72);color:#607b84;font-size:.72rem;font-weight:650}.sky-profile-birth span{font-size:.65rem;color:#91a8b0}
.sky-profile-favorites{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:15px}.sky-profile-favorites div{display:grid;gap:2px}.sky-profile-favorites small{color:#a1adb1;font-size:.55rem}.sky-profile-favorites strong{color:#637b83;font-size:.72rem;font-weight:600}.sky-profile-summary__bio{margin-top:14px!important;padding-top:12px;border-top:1px dashed rgba(82,112,124,.11);max-width:760px!important}
.sky-profile-summary .sky-profile-pendant{position:absolute!important;z-index:3!important;right:25px!important;top:24px!important;width:68px!important;height:68px!important;padding:8px;border-radius:22px;background:rgba(255,255,255,.76);box-shadow:0 8px 22px rgba(60,84,94,.06);backdrop-filter:blur(5px)}.sky-profile-summary .sky-profile-pendant::before{inset:8px!important;background:rgba(222,238,243,.44)!important}.sky-profile-summary__actions{position:absolute;right:27px;bottom:24px;z-index:3}.sky-share-button{display:inline-flex!important;align-items:center;gap:5px!important}

.sky-playstyle-strip{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;margin:12px 0 0!important;padding:0!important;border:0!important;background:transparent!important;overflow:visible!important}.sky-playstyle-item{display:flex!important;align-items:center;gap:9px;min-height:58px;padding:10px 12px!important;border:1px solid rgba(73,101,111,.10)!important;border-radius:15px;background:rgba(255,255,255,.72);text-align:left!important}.sky-playstyle-item::before{display:none!important}.sky-playstyle-item__symbol{display:grid;place-items:center;flex:0 0 29px;width:29px;height:29px;border-radius:50%;background:#eef5f6;color:#78939c;font-size:.82rem}.sky-playstyle-item span:last-child{min-width:0}.sky-playstyle-item small{margin:0 0 2px!important;color:#a2aeb2!important;font-size:.5rem!important;letter-spacing:.08em}.sky-playstyle-item strong{font-size:.69rem!important;color:#5d747d!important}

.sky-dashboard-sections{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;gap:14px!important;margin-top:20px!important}.sky-dashboard-sections>.sky-panel--summary{min-height:300px!important;padding:24px 26px!important;border-radius:22px!important;border:1px solid var(--sky-line)!important;box-shadow:none!important}.sky-panel--today{background:linear-gradient(155deg,#fbfdfd,#f3f8f9)!important}.sky-panel--badges{background:#fff!important}.sky-section-kicker{margin:0 0 2px!important;color:#a1b0b5!important;font-size:.55rem!important;letter-spacing:.16em!important}.sky-panel-heading h2,.sky-section-heading h2{font-size:1.02rem!important;color:#4e6972!important}.sky-today-list{display:grid;gap:7px;margin-top:16px}.sky-today-row{min-height:48px!important;padding:9px 11px!important;border:0!important;border-bottom:1px solid rgba(73,101,111,.075)!important;border-radius:0!important;background:transparent!important}.sky-today-row span i{display:grid!important;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(226,239,242,.72);font-style:normal;color:#75909a}.sky-today-row strong{color:#506a73!important}.sky-badge-list{display:grid;gap:9px;margin-top:15px}.sky-badge{padding:10px!important;border:1px solid rgba(73,101,111,.09);border-radius:15px;background:#fafcfc}.sky-badge-emblem{width:38px!important;height:38px!important;border:1px solid rgba(117,149,160,.14)!important;background:#f0f6f7!important;box-shadow:inset 0 0 0 4px #fff}.sky-panel-more{font-size:.64rem!important}

.sky-progress-section{margin-top:24px!important;padding:24px 0 0;border-top:1px solid rgba(73,101,111,.09)}.sky-section-heading--simple{margin-bottom:12px!important}.sky-progress-grid--three{grid-template-columns:1.25fr .875fr .875fr!important;gap:12px!important}.sky-progress-card{min-height:164px!important;border:1px solid rgba(73,101,111,.10)!important;border-radius:20px!important;background:#fff!important;box-shadow:none!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.sky-progress-card:hover{transform:translateY(-2px);border-color:rgba(73,101,111,.18)!important;box-shadow:0 10px 26px rgba(52,78,88,.055)!important}.sky-progress-card--wing{min-height:164px!important;background-image:linear-gradient(90deg,rgba(255,255,255,.91),rgba(255,255,255,.56)),var(--sky-wing-bg)!important;background-size:auto,cover!important;background-position:center!important}.sky-wing-card-content{justify-content:center!important}.sky-wing-count{font-size:2.1rem!important}.sky-progress-card h3{font-size:.88rem!important}

.sky-account-settings{width:min(980px,100%)!important;gap:14px!important}.sky-account-section{padding:28px 30px!important;border-radius:22px!important;background:#fff!important}.sky-account-section__heading{margin-bottom:22px!important}.sky-settings-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sky-settings-field-grid label,.sky-settings-account-grid label,.sky-settings-password-grid label{display:grid;gap:7px}.sky-settings-field-grid label>span,.sky-settings-account-grid label>span,.sky-settings-password-grid label>span{font-size:.66rem;color:#71858c;font-weight:650}.sky-account-section input,.sky-account-section select,.sky-account-section textarea{border:1px solid rgba(73,101,111,.14)!important;border-radius:12px!important;background:#fbfdfd!important;padding:11px 12px!important;box-shadow:none!important}.sky-account-section input:focus,.sky-account-section select:focus,.sky-account-section textarea:focus{background:#fff!important;border-color:#93b0b9!important;box-shadow:0 0 0 3px rgba(147,176,185,.12)!important}.sky-settings-avatar-row{display:flex!important;align-items:center!important;gap:18px!important}.sky-settings-avatar-picker{flex:0 0 auto}.sky-avatar-edit-mark{right:-4px!important;bottom:0!important;z-index:30!important}

@media(max-width:900px){.sky-profile-summary--hero{grid-template-columns:82px minmax(0,1fr);padding:26px 24px}.sky-profile-summary__avatar{width:78px!important;height:78px!important}.sky-profile-summary .sky-profile-pendant{width:56px!important;height:56px!important}.sky-profile-summary__actions{right:22px;bottom:20px}.sky-playstyle-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sky-dashboard-sections{grid-template-columns:1fr!important}.sky-dashboard-sections>.sky-panel--summary{min-height:auto!important}.sky-progress-grid--three{grid-template-columns:1fr 1fr!important}.sky-progress-card--wing{grid-column:1/-1}.sky-account-section{padding:25px 24px!important}}
@media(max-width:620px){.sky-dashboard{padding-inline:2px}.sky-main-tabs{width:100%;max-width:390px}.sky-main-tabs button{flex:1;min-width:0}.sky-profile-summary--hero{grid-template-columns:62px minmax(0,1fr);gap:14px;padding:21px 17px 64px;border-radius:20px}.sky-profile-summary__avatar{width:60px!important;height:60px!important;border-width:3px}.sky-profile-summary__name-row h1{font-size:1.28rem!important}.sky-profile-summary .sky-profile-pendant{right:15px!important;top:16px!important;width:44px!important;height:44px!important;padding:5px}.sky-profile-summary__body{padding-right:40px!important}.sky-profile-favorites{grid-column:1/-1;gap:7px 14px}.sky-profile-summary__actions{left:17px;right:auto;bottom:17px}.sky-playstyle-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sky-playstyle-item{min-height:54px}.sky-dashboard-sections>.sky-panel--summary{padding:21px 18px!important;border-radius:18px!important}.sky-progress-grid--three{grid-template-columns:1fr!important}.sky-progress-card--wing{grid-column:auto}.sky-account-section{padding:22px 17px!important;border-radius:18px!important}.sky-settings-field-grid{grid-template-columns:1fr!important}.sky-settings-avatar-row{align-items:flex-start!important}}

/* ===== v0.9.1: container-aware tablet layout ===== */
.sky-dashboard {
  width: min(1120px, calc(100% - 32px)) !important;
  container-type: inline-size;
  container-name: skytecho;
}

/* iPad / narrow content: react to the dashboard's real width, not viewport width. */
@container skytecho (max-width: 980px) {
  .sky-profile-summary--hero {
    grid-template-columns: 86px minmax(0,1fr) !important;
    gap: 20px !important;
    min-height: 0 !important;
    padding: 28px 28px 30px !important;
  }
  .sky-profile-summary__avatar {
    width: 82px !important;
    height: 82px !important;
  }
  .sky-profile-summary__body {
    padding-right: 70px !important;
  }
  .sky-profile-summary .sky-profile-pendant {
    width: 58px !important;
    height: 58px !important;
    right: 22px !important;
    top: 22px !important;
  }
  .sky-profile-summary__actions {
    right: 24px !important;
    bottom: 22px !important;
  }
  .sky-profile-favorites {
    gap: 10px 22px !important;
  }

  .sky-playstyle-strip {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 10px !important;
  }
  .sky-playstyle-item {
    min-height: 62px !important;
    padding: 11px 13px !important;
  }

  .sky-dashboard-sections {
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
  }
  .sky-dashboard-sections > .sky-panel--summary {
    min-height: 0 !important;
    padding: 23px 22px !important;
  }

  .sky-progress-grid--three {
    grid-template-columns: 1.15fr 1fr !important;
    gap: 14px !important;
  }
  .sky-progress-card--wing {
    grid-row: span 2;
    grid-column: auto !important;
    min-height: 100% !important;
  }

  .sky-account-settings {
    width: 100% !important;
    gap: 18px !important;
  }
  .sky-account-section {
    padding: 28px 26px !important;
  }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 20px !important;
  }
  .sky-settings-avatar-row {
    gap: 20px !important;
  }
}

@container skytecho (max-width: 820px) {
  .sky-dashboard-sections {
    grid-template-columns: 1fr !important;
  }
  .sky-dashboard-sections > .sky-panel--summary {
    min-height: auto !important;
  }

  .sky-progress-grid--three {
    grid-template-columns: 1fr 1fr !important;
  }
  .sky-progress-card--wing {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    min-height: 210px !important;
  }

  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    grid-template-columns: 1fr !important;
  }
}

@container skytecho (max-width: 680px) {
  .sky-profile-summary--hero {
    grid-template-columns: 62px minmax(0,1fr) !important;
    gap: 14px !important;
    padding: 21px 17px 64px !important;
  }
  .sky-profile-summary__avatar {
    width: 60px !important;
    height: 60px !important;
  }
  .sky-profile-summary__body {
    padding-right: 40px !important;
  }
  .sky-profile-summary .sky-profile-pendant {
    width: 44px !important;
    height: 44px !important;
    top: 16px !important;
    right: 15px !important;
  }
  .sky-profile-summary__actions {
    left: 17px !important;
    right: auto !important;
    bottom: 17px !important;
  }
  .sky-playstyle-strip {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
  .sky-progress-grid--three {
    grid-template-columns: 1fr !important;
  }
  .sky-progress-card--wing {
    grid-column: auto !important;
    min-height: 190px !important;
  }
  .sky-account-section {
    padding: 22px 18px !important;
  }
}

/* Fallback for browsers without container queries. */
@media (min-width: 901px) and (max-width: 1180px) {
  .sky-dashboard { width: min(980px, calc(100% - 40px)) !important; }
}

/* ===== v0.9.2 season collection ===== */
.sky-season-collection-card{position:relative;display:grid;grid-template-columns:minmax(180px,.9fr) minmax(230px,1.2fr) auto;align-items:center;gap:24px;margin-top:14px;padding:22px 24px;border:1px solid rgba(69,96,100,.11);border-radius:22px;background:linear-gradient(100deg,rgba(249,252,251,.98),rgba(255,255,255,.96));color:inherit;text-decoration:none;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.sky-season-collection-card:hover{transform:translateY(-1px);border-color:rgba(71,105,110,.2);box-shadow:0 12px 30px rgba(49,75,79,.07)}
.sky-season-collection-card__copy span{display:block;margin-bottom:2px;color:#97a2a4;font-size:.66rem;letter-spacing:.13em;text-transform:uppercase}.sky-season-collection-card__copy h3{margin:0!important;padding:0!important;background:none!important;border:0!important;color:#455d61!important;font-size:1rem!important}.sky-season-collection-card__copy p{margin:5px 0 0;color:#849295;font-size:.78rem}.sky-season-collection-card__copy p strong{color:#526d72;font-size:1.05rem}
.sky-season-collection-card__pendants{display:flex;align-items:center;min-width:0}.sky-season-collection-card__pendants>span{position:relative;display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;margin-left:-7px;border:3px solid #fff;border-radius:50%;background:#f0f4f3;color:#89999b;box-shadow:0 3px 10px rgba(63,83,87,.08)}.sky-season-collection-card__pendants>span:first-child{margin-left:0}.sky-season-collection-card__pendants img{position:relative;z-index:2;width:39px;height:39px;object-fit:contain}.sky-season-collection-card__pendants>span.is-complete::before{content:"";position:absolute;inset:-8px;border-radius:50%;background:radial-gradient(circle,rgba(231,205,121,.38),transparent 68%);animation:skyTechoSeasonGlow 3.6s ease-in-out infinite}.sky-season-collection-card__more{white-space:nowrap;color:#698084;font-size:.78rem;font-weight:600}
@keyframes skyTechoSeasonGlow{0%,100%{opacity:.4;transform:scale(.94)}50%{opacity:1;transform:scale(1.08)}}
@container sky-dashboard (max-width:760px){.sky-season-collection-card{grid-template-columns:1fr auto;gap:16px}.sky-season-collection-card__pendants{grid-column:1/-1;grid-row:2}.sky-season-collection-card__more{grid-column:2;grid-row:1}}
@container sky-dashboard (max-width:520px){.sky-season-collection-card{grid-template-columns:1fr;padding:19px}.sky-season-collection-card__more{grid-column:1;grid-row:auto}.sky-season-collection-card__pendants{grid-column:1;grid-row:auto;overflow:hidden}.sky-season-collection-card__pendants>span{flex-basis:47px;width:47px;height:47px}.sky-season-collection-card__pendants img{width:35px;height:35px}}
@media(prefers-reduced-motion:reduce){.sky-season-collection-card__pendants>span.is-complete::before{animation:none}}


/* ===== v0.9.3: tablet width / no tab underline / compact latest season ===== */
/* The dashboard should use the device width instead of being squeezed by a narrow WP content column. */
.sky-dashboard {
  box-sizing: border-box;
}

/* No decorative underline under dashboard tabs. */
.sky-main-tabs,
.sky-main-tabs::before,
.sky-main-tabs::after {
  border-bottom: 0 !important;
}
.sky-main-tabs button::before,
.sky-main-tabs button::after,
.sky-main-tabs button.is-active::before,
.sky-main-tabs button.is-active::after {
  content: none !important;
  display: none !important;
  background: none !important;
  box-shadow: none !important;
}

/* Birth label should stay readable as one phrase on small screens. */
.sky-profile-birth {
  max-width: 100%;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

/* Latest season only: one pendant + compact copy, never a row of circles. */
.sky-season-collection-card {
  grid-template-columns: minmax(0,1fr) 70px auto !important;
  gap: 18px !important;
}
.sky-season-collection-card__pendants {
  justify-content: center !important;
  overflow: visible !important;
}
.sky-season-collection-card__pendants > span {
  flex: 0 0 58px !important;
  width: 58px !important;
  height: 58px !important;
  margin-left: 0 !important;
}
.sky-season-collection-card__pendants img {
  width: 44px !important;
  height: 44px !important;
}

/* Tablet: break out of a narrow article column and actually use iPad width. */
@media (min-width: 700px) and (max-width: 1180px) {
  .sky-dashboard {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: min(1040px, calc(100vw - 48px)) !important;
    max-width: none !important;
    padding-inline: 0 !important;
  }

  .sky-profile-summary--hero {
    grid-template-columns: 86px minmax(0,1fr) !important;
    gap: 20px !important;
    padding: 28px 30px !important;
  }
  .sky-profile-summary__avatar {
    width: 82px !important;
    height: 82px !important;
  }
  .sky-profile-summary__body {
    min-width: 0 !important;
    padding-right: 70px !important;
  }
  .sky-profile-birth {
    width: max-content !important;
    font-size: .7rem !important;
  }

  .sky-playstyle-strip {
    grid-template-columns: repeat(5,minmax(0,1fr)) !important;
  }
  .sky-playstyle-item {
    min-width: 0 !important;
  }

  .sky-dashboard-sections {
    grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr) !important;
    gap: 16px !important;
  }

  .sky-progress-grid--three {
    grid-template-columns: 1.15fr 1fr 1fr !important;
    gap: 14px !important;
  }
  .sky-progress-card--wing {
    grid-column: auto !important;
    grid-row: auto !important;
    min-height: 190px !important;
  }

  /* Account settings keep a tablet-sized canvas instead of collapsing to phone cards. */
  .sky-account-settings {
    width: 100% !important;
    max-width: none !important;
    gap: 18px !important;
  }
  .sky-account-section {
    width: 100% !important;
    padding: 30px 32px !important;
    border-radius: 22px !important;
  }
  .sky-account-profile-row,
  .sky-settings-avatar-row {
    width: 100% !important;
  }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 20px 22px !important;
  }
  .sky-settings-field-wide,
  .sky-settings-readonly {
    grid-column: 1 / -1 !important;
  }

  .sky-season-collection-card {
    grid-template-columns: minmax(0,1fr) 68px auto !important;
    padding: 21px 23px !important;
  }
}

/* Phones: full usable width, but a true phone layout. */
@media (max-width: 699px) {
  .sky-dashboard {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100vw - 22px) !important;
    max-width: none !important;
    padding-inline: 0 !important;
  }
  .sky-profile-summary--hero {
    padding-right: 14px !important;
  }
  .sky-profile-summary__body {
    padding-right: 38px !important;
  }
  .sky-profile-birth {
    width: max-content !important;
    max-width: calc(100vw - 128px) !important;
    font-size: clamp(.58rem, 2.75vw, .68rem) !important;
    padding: 5px 8px !important;
  }
  .sky-profile-birth span { flex: 0 0 auto; }

  .sky-season-collection-card {
    grid-template-columns: minmax(0,1fr) 56px !important;
    gap: 12px !important;
    padding: 18px !important;
  }
  .sky-season-collection-card__pendants {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  .sky-season-collection-card__more {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }
  .sky-season-collection-card__pendants > span {
    flex-basis: 50px !important;
    width: 50px !important;
    height: 50px !important;
  }
  .sky-season-collection-card__pendants img {
    width: 38px !important;
    height: 38px !important;
  }
}


/* ===== v0.9.4: containment fix (no viewport breakout) ===== */
.sky-dashboard,
.sky-dashboard *,
.sky-dashboard *::before,
.sky-dashboard *::after {
  box-sizing: border-box;
}

/* Never escape the WordPress content column. The previous viewport breakout
   caused horizontal overflow on iPad / phone. */
.sky-dashboard {
  position: static !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: 1120px !important;
  min-width: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  overflow-x: clip;
}
.sky-dashboard > *,
.sky-dashboard-tabpanel,
.sky-account-settings,
.sky-account-section,
.sky-profile-summary--hero,
.sky-dashboard-sections,
.sky-progress-section,
.sky-progress-grid--three,
.sky-season-collection-card {
  min-width: 0 !important;
  max-width: 100% !important;
}
.sky-dashboard img,
.sky-dashboard svg {
  max-width: 100%;
}

/* Keep the birth season on one line without allowing it to stretch the card. */
.sky-profile-birth {
  width: fit-content !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis;
}

/* Tablet: use the available parent width, never the viewport width. */
@media (min-width: 700px) and (max-width: 1180px) {
  .sky-dashboard {
    width: 100% !important;
    max-width: 100% !important;
  }
  .sky-account-settings {
    width: 100% !important;
    max-width: 100% !important;
  }
  .sky-account-section {
    width: 100% !important;
    max-width: 100% !important;
  }
  .sky-settings-field-grid,
  .sky-settings-account-grid,
  .sky-settings-password-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Phone: also stay inside the content area. */
@media (max-width: 699px) {
  .sky-dashboard {
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .sky-profile-birth {
    max-width: 100% !important;
    font-size: clamp(.58rem, 2.7vw, .68rem) !important;
  }
}

/* ===== v0.9.5: play style responsive wrapping ===== */
.sky-playstyle-strip {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
.sky-playstyle-strip__items {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(126px, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}
.sky-playstyle-item {
  min-width: 126px !important;
  width: auto !important;
  box-sizing: border-box !important;
}
.sky-playstyle-item small,
.sky-playstyle-item strong {
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  line-height: 1.35 !important;
}
.sky-playstyle-item strong {
  overflow-wrap: anywhere !important;
}

@media (max-width: 760px) {
  .sky-playstyle-strip__items {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .sky-playstyle-item {
    min-width: 0 !important;
  }
}

@media (max-width: 380px) {
  .sky-playstyle-strip__items {
    grid-template-columns: 1fr !important;
  }
}

/* ===== v0.9.6: stable play-style grid ===== */
/*
 * Do not squeeze five cards into a narrow dashboard.  The dashboard itself
 * is the responsive reference, so intermediate devices wrap before labels
 * or values become cramped.
 */
.sky-playstyle-strip {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}
.sky-playstyle-item {
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.sky-playstyle-item small,
.sky-playstyle-item strong {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: break-word !important;
}

@container skytecho (max-width: 759px) {
  .sky-playstyle-strip {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}

@container skytecho (max-width: 519px) {
  .sky-playstyle-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@container skytecho (max-width: 339px) {
  .sky-playstyle-strip {
    grid-template-columns: 1fr !important;
  }
}

/* Fallback for browsers that do not support container queries. */
@supports not (container-type: inline-size) {
  @media (max-width: 900px) {
    .sky-playstyle-strip {
      grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      gap: 10px !important;
    }
  }
  @media (max-width: 560px) {
    .sky-playstyle-strip {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
  }
  @media (max-width: 360px) {
    .sky-playstyle-strip {
      grid-template-columns: 1fr !important;
    }
  }
}


/* ===== v0.9.7: final label/share refinements ===== */
.sky-section-kicker {
  text-transform: uppercase !important;
}
.sky-profile-summary__mini {
  text-transform: uppercase !important;
}
.sky-profile-summary__actions {
  left: auto !important;
  right: 27px !important;
  bottom: 24px !important;
  justify-self: auto !important;
}
@media (max-width: 900px) {
  .sky-profile-summary__actions {
    left: auto !important;
    right: 22px !important;
    bottom: 20px !important;
  }
}
@media (max-width: 620px) {
  .sky-profile-summary__actions {
    left: auto !important;
    right: 17px !important;
    bottom: 17px !important;
  }
}


/* ===== v0.10.0: badge collection + full-width account settings ===== */
.sky-account-ui-screen .entry-header > .entry-title,
.sky-account-ui-screen .article-header > .entry-title,
.sky-account-ui-screen main > article > header.entry-header,
.sky-season-collection-screen .entry-header > .entry-title,
.sky-season-collection-screen .article-header > .entry-title { display:none !important; }

.sky-account-settings { width:100% !important; max-width:none !important; margin-inline:0 !important; }
.sky-account-section { width:100% !important; max-width:none !important; box-sizing:border-box !important; }
@media (min-width:700px) {
  .sky-account-section { padding:34px clamp(28px,4vw,52px) !important; }
  .sky-account-section .sky-settings-field-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:22px 30px !important; }
  .sky-account-section .sky-settings-account-grid { grid-template-columns:minmax(180px,.7fr) repeat(2,minmax(0,1fr)) !important; gap:22px 30px !important; }
  .sky-account-section .sky-settings-password-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:22px 30px !important; }
  .sky-account-section .sky-settings-password-grid label:first-child { grid-column:auto !important; }
}

.sky-profile-badges { display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
.sky-profile-badges > span { display:inline-flex; align-items:center; gap:6px; min-width:0; padding:6px 9px 6px 6px; border:1px solid rgba(95,125,135,.12); border-radius:999px; background:rgba(255,255,255,.68); color:#60757b; }
.sky-profile-badges i { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#f1f6f6; color:#91aeb4; font-style:normal; }
.sky-profile-badges small { max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.62rem; font-weight:650; }

.sky-badge-overview { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin:10px 0 28px; padding:28px 30px; border:1px solid rgba(76,103,111,.12); border-radius:24px; background:#fff; }
.sky-badge-overview span,.sky-badge-category__head span { color:#91a1a5; font-size:.66rem; font-weight:750; letter-spacing:.15em; }
.sky-badge-overview h1 { margin:4px 0 5px !important; padding:0 !important; background:none !important; border:0 !important; color:#40565c !important; text-align:left !important; font-size:1.55rem !important; text-shadow:none !important; }
.sky-badge-overview p { margin:0; color:#849398; font-size:.78rem; }
.sky-badge-overview__count { flex:0 0 auto; display:flex; align-items:baseline; gap:5px; color:#8a989b; }
.sky-badge-overview__count strong { color:#49636a; font-size:2rem; }
.sky-badge-category { margin:0 0 32px; }
.sky-badge-category__head { display:flex; justify-content:space-between; align-items:flex-end; gap:18px; margin:0 2px 12px; }
.sky-badge-category__head h2 { margin:3px 0 0 !important; padding:0 !important; background:none !important; border:0 !important; color:#465d63 !important; font-size:1.05rem !important; }
.sky-badge-category__head > strong { color:#809196; font-size:.72rem; }
.sky-badges-page .sky-trophy-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.sky-badges-page .sky-trophy { position:relative; display:grid; grid-template-columns:54px minmax(0,1fr); gap:13px; align-items:center; min-width:0; padding:16px 15px 42px; border:1px solid rgba(78,103,110,.11); border-radius:18px; background:#fff; box-shadow:none; }
.sky-badges-page .sky-trophy.is-locked { opacity:.56; background:#fafcfc; }
.sky-badges-page .sky-trophy.rarity-rare.is-earned { border-color:rgba(157,174,184,.28); box-shadow:0 8px 24px rgba(76,106,117,.055); }
.sky-badges-page .sky-trophy.rarity-legend.is-earned { border-color:rgba(191,165,88,.3); box-shadow:0 8px 26px rgba(176,150,74,.08); }
.sky-badges-page .sky-trophy-emblem { width:52px !important; height:52px !important; }
.sky-badges-page .sky-trophy-copy h3 { margin:2px 0 4px !important; padding:0 !important; background:none !important; border:0 !important; color:#465d63 !important; font-size:.84rem !important; }
.sky-badges-page .sky-trophy-copy p { margin:0; color:#879498; font-size:.68rem; line-height:1.55; }
.sky-badges-page .sky-trophy-state { color:#9aa6a9; font-size:.58rem; }
.sky-badge-favorite { position:absolute; left:15px; bottom:12px; display:inline-flex; align-items:center; gap:5px; color:#7b8f94; font-size:.62rem; cursor:pointer; }
.sky-badge-favorite input { accent-color:#78999d; }
.sky-badge-save { position:sticky; z-index:8; bottom:12px; display:flex; align-items:center; justify-content:flex-end; gap:12px; margin-top:18px; padding:10px 12px; border:1px solid rgba(78,103,110,.1); border-radius:16px; background:rgba(255,255,255,.94); backdrop-filter:blur(8px); }
.sky-badge-save .sky-primary-button { width:auto !important; }
.sky-badge-save small { color:#94a0a3; font-size:.62rem; }
@media(max-width:900px){ .sky-badges-page .sky-trophy-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:600px){ .sky-badge-overview{align-items:flex-start;flex-direction:column;padding:22px 18px}.sky-badges-page .sky-trophy-grid{grid-template-columns:1fr}.sky-badge-save{position:static;align-items:stretch;flex-direction:column}.sky-badge-save .sky-primary-button{width:100%!important} }


/* v0.10.1 badge polish */
.sky-badges-page .sky-trophy { padding-bottom:16px; }
.sky-badges-page .sky-trophy-copy .sky-trophy-state { display:inline-flex; margin-bottom:4px; padding:2px 7px; border-radius:999px; background:#f1f5f5; color:#8a989b; font-size:.56rem; }
.sky-badges-page .sky-trophy-howto { margin:6px 0 2px; color:#71878c; font-size:.58rem; font-weight:700; letter-spacing:.06em; }
.sky-badge-favorite { left:auto !important; right:11px; top:10px; bottom:auto !important; width:32px; height:32px; display:grid !important; place-items:center; border:1px solid rgba(82,108,114,.13); border-radius:50%; background:rgba(255,255,255,.92); color:#91a0a3; cursor:pointer; transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease; }
.sky-badge-favorite:hover { transform:translateY(-1px); border-color:rgba(82,108,114,.25); }
.sky-badge-favorite input { position:absolute; opacity:0; pointer-events:none; }
.sky-badge-favorite > span[aria-hidden] { font-size:1.12rem; line-height:1; }
.sky-badge-favorite.is-selected { background:#f8f6ec; border-color:rgba(175,151,77,.3); color:#a88e43; }
.sky-badge-favorite.is-selected > span[aria-hidden] { font-size:0; }
.sky-badge-favorite.is-selected > span[aria-hidden]::after { content:'★'; font-size:1.08rem; }
.sky-badge-favorite:has(input:disabled) { opacity:.38; cursor:not-allowed; }
.sky-badge-save { position:static !important; justify-content:flex-end; padding:0 !important; border:0 !important; background:transparent !important; backdrop-filter:none !important; }
.sky-badge-save .sky-primary-button { min-width:132px; }


/* ===== v0.10.2: badge locked-card cleanup ===== */
.sky-badges-page .sky-trophy {
  grid-template-columns: 58px minmax(0, 1fr) !important;
  column-gap: 16px !important;
  align-items: start !important;
}
.sky-badges-page .sky-trophy-emblem {
  position: static !important;
  align-self: start !important;
  flex: none !important;
}
.sky-badges-page .sky-trophy-copy {
  min-width: 0 !important;
  padding-top: 4px !important;
}
.sky-badges-page .sky-trophy.is-earned .sky-trophy-copy {
  padding-right: 38px !important;
}
.sky-badges-page .sky-trophy-copy h3 {
  position: static !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
.sky-badges-page .sky-trophy-copy .sky-trophy-state { display:none !important; }
.sky-badges-page .sky-trophy.is-locked .sky-trophy-copy h3 { display:none !important; }
.sky-badges-page .sky-trophy-howto {
  margin: 0 0 5px !important;
  color: #6f858b !important;
  font-size: .61rem !important;
  font-weight: 750 !important;
  letter-spacing: .08em !important;
}
.sky-badges-page .sky-trophy.is-locked { opacity: .72 !important; }
.sky-badges-page .sky-trophy.is-locked .sky-trophy-copy p { color:#798b90 !important; }
@media (max-width: 560px) {
  .sky-badges-page .sky-trophy { grid-template-columns: 50px minmax(0,1fr) !important; column-gap: 13px !important; }
  .sky-badges-page .sky-trophy-emblem { width:46px !important; height:46px !important; }
}


/* ===== v0.10.3: readable horizontal badge cards ===== */
.sky-badges-page .sky-trophy-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
.sky-badges-page .sky-trophy {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 96px !important;
  padding: 17px 18px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.sky-badges-page .sky-trophy-emblem {
  position: static !important;
  flex: 0 0 58px !important;
  width: 58px !important;
  height: 58px !important;
  margin: 0 !important;
  align-self: center !important;
  writing-mode: horizontal-tb !important;
}
.sky-badges-page .sky-trophy-emblem span {
  display: block !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  white-space: nowrap !important;
}
.sky-badges-page .sky-trophy-copy {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  padding: 0 !important;
  writing-mode: horizontal-tb !important;
}
.sky-badges-page .sky-trophy.is-earned .sky-trophy-copy {
  padding-right: 36px !important;
}
.sky-badges-page .sky-trophy-copy h3,
.sky-badges-page .sky-trophy-copy p,
.sky-badges-page .sky-trophy-howto,
.sky-badges-page .sky-trophy-condition {
  position: static !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  transform: none !important;
}
.sky-badges-page .sky-trophy-copy h3 {
  margin: 0 0 5px !important;
  font-size: .88rem !important;
  line-height: 1.45 !important;
}
.sky-badges-page .sky-trophy-copy p,
.sky-badges-page .sky-trophy-condition {
  margin: 0 !important;
  color: #647a80 !important;
  font-size: .74rem !important;
  line-height: 1.7 !important;
}
.sky-badges-page .sky-trophy-howto {
  margin: 0 0 4px !important;
  color: #9aa6a9 !important;
  font-size: .58rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
}
.sky-badges-page .sky-trophy.is-locked {
  opacity: .78 !important;
}
.sky-badges-page .sky-trophy.is-locked .sky-trophy-emblem {
  opacity: .66 !important;
}
.sky-badges-page .sky-badge-favorite {
  z-index: 3 !important;
  right: 12px !important;
  top: 12px !important;
}
@media (max-width: 980px) {
  .sky-badges-page .sky-trophy-grid {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 520px) {
  .sky-badges-page .sky-trophy {
    gap: 13px !important;
    min-height: 88px !important;
    padding: 14px !important;
  }
  .sky-badges-page .sky-trophy-emblem {
    flex-basis: 50px !important;
    width: 50px !important;
    height: 50px !important;
  }
  .sky-badges-page .sky-trophy-copy h3 { font-size: .82rem !important; }
  .sky-badges-page .sky-trophy-copy p,
  .sky-badges-page .sky-trophy-condition { font-size: .7rem !important; }
}

/* v0.10.4 */
.sky-trophy-earned-condition{margin-top:8px!important;padding-top:7px;border-top:1px solid rgba(72,96,100,.10);font-size:.76rem!important;line-height:1.55;color:var(--sky-muted)}

.sky-trophy-rate{flex:0 0 auto;min-width:66px;margin-left:auto;padding-left:10px;text-align:right;white-space:nowrap}
.sky-trophy-rate span{display:block;font-size:.61rem;color:var(--sky-muted);letter-spacing:.05em}
.sky-trophy-rate strong{display:block;margin-top:1px;font-size:.84rem;font-weight:700;color:var(--sky-text)}
@media(max-width:700px){.sky-trophy-rate{position:absolute;right:14px;bottom:11px;padding:0}.sky-trophy-copy{padding-right:68px}}

/* v0.10.6 badge meta layout */
.sky-trophy{position:relative;padding-right:54px!important}
.sky-trophy-rate{
  position:static!important;
  min-width:64px;
  margin-left:auto;
  padding:0 0 0 10px!important;
  align-self:flex-end;
  text-align:right;
}
.sky-badge-favorite{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  bottom:auto!important;
}
@media(max-width:700px){
  .sky-trophy{padding-right:48px!important}
  .sky-trophy-copy{padding-right:0!important}
  .sky-trophy-rate{
    position:static!important;
    margin:8px 0 0 0!important;
    padding:0!important;
    text-align:left;
    align-self:auto;
  }
}

/* v0.10.7 favorite autosave */
.sky-badge-favorite-status{
  min-height:1.25em;
  margin-top:12px;
  text-align:right;
  font-size:.72rem;
  color:var(--sky-muted);
}
.sky-badge-save{display:none!important}

/* v0.10.8 mobile badge breathing room */
@media (max-width:700px){
  .sky-badges-page{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .sky-badge-category{
    margin-top:28px!important;
  }
  .sky-badge-category__head{
    margin-bottom:14px!important;
  }
  .sky-trophy-grid{
    gap:14px!important;
  }
  .sky-trophy{
    padding:16px 48px 16px 14px!important;
    gap:14px!important;
    border-radius:16px!important;
  }
  .sky-trophy-emblem{
    flex:0 0 54px!important;
    width:54px!important;
    min-width:54px!important;
    height:54px!important;
  }
  .sky-trophy-copy h3{
    margin:0 0 6px!important;
    line-height:1.45!important;
  }
  .sky-trophy-copy p{
    line-height:1.65!important;
  }
  .sky-trophy-earned-condition{
    margin-top:10px!important;
    padding-top:9px!important;
  }
  .sky-trophy-rate{
    margin-top:10px!important;
  }
  .sky-badge-favorite{
    top:12px!important;
    right:12px!important;
  }
}
@media (max-width:420px){
  .sky-trophy{
    padding-top:18px!important;
    padding-bottom:18px!important;
  }
  .sky-trophy-emblem{
    flex-basis:48px!important;
    width:48px!important;
    min-width:48px!important;
    height:48px!important;
  }
}

/* v0.10.9 account date field overflow */
.sky-account-view,
.sky-account-section,
.sky-account-fields,
.sky-account-fields > *,
.sky-account-field,
.sky-account-field label,
.sky-account-view label {
  min-width:0;
}
.sky-account-view input[type="date"],
.sky-account-section input[type="date"],
.sky-account-fields input[type="date"] {
  display:block;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  inline-size:100%!important;
}
@media (max-width:700px){
  .sky-account-view input[type="date"],
  .sky-account-section input[type="date"],
  .sky-account-fields input[type="date"] {
    font-size:16px; /* iOSのズームと日付inputの過剰な最小幅を防ぐ */
  }
}

/* v0.11.2 iOS Safari date input overflow fix */
.sky-account-view label,
.sky-account-view .sky-account-field,
.sky-account-view .sky-account-fields > *,
.sky-account-section label,
.sky-account-section .sky-account-field,
.sky-account-section .sky-account-fields > * {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.sky-account-view input[type="date"],
.sky-account-section input[type="date"],
.sky-account-fields input[type="date"] {
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  inline-size:100% !important;
  box-sizing:border-box !important;
  -webkit-appearance:none !important;
  appearance:none !important;
  overflow:hidden !important;
}

@supports (-webkit-touch-callout: none) {
  .sky-account-view input[type="date"],
  .sky-account-section input[type="date"],
  .sky-account-fields input[type="date"] {
    font-size:16px !important;
    line-height:1.35 !important;
    padding-left:.8rem !important;
    padding-right:.55rem !important;
    text-align:left !important;
  }

  .sky-account-view input[type="date"]::-webkit-date-and-time-value,
  .sky-account-section input[type="date"]::-webkit-date-and-time-value,
  .sky-account-fields input[type="date"]::-webkit-date-and-time-value {
    text-align:left !important;
    min-width:0 !important;
  }

  .sky-account-view input[type="date"]::-webkit-calendar-picker-indicator,
  .sky-account-section input[type="date"]::-webkit-calendar-picker-indicator,
  .sky-account-fields input[type="date"]::-webkit-calendar-picker-indicator {
    margin:0 !important;
    padding:0 !important;
  }
}

@media (max-width:700px) {
  .sky-account-view .sky-account-fields,
  .sky-account-section .sky-account-fields {
    grid-template-columns:minmax(0,1fr) !important;
  }

  .sky-account-view input[type="date"],
  .sky-account-section input[type="date"],
  .sky-account-fields input[type="date"] {
    width:calc(100% - 2px) !important;
    max-width:calc(100% - 2px) !important;
  }
}


/* =========================================================
 * v0.12.1 ACHIEVEMENTS — PlayStation-like compact trophy list
 * 1 achievement = icon / title + one condition / acquisition rate
 * ========================================================= */
.sky-badges-page .sky-trophy-grid{
  grid-template-columns:1fr !important;
  gap:8px !important;
}
.sky-badges-page .sky-trophy{
  display:grid !important;
  grid-template-columns:52px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
  min-height:76px !important;
  padding:11px 52px 11px 12px !important;
  overflow:visible !important;
  border-radius:12px !important;
}
.sky-badges-page .sky-trophy-emblem{
  flex:none !important;
  width:48px !important;
  min-width:48px !important;
  height:48px !important;
  align-self:center !important;
}
.sky-badges-page .sky-trophy-copy,
.sky-badges-page .sky-trophy.is-earned .sky-trophy-copy{
  min-width:0 !important;
  padding:0 !important;
}
.sky-badges-page .sky-trophy-copy h3{
  margin:0 0 3px !important;
  color:#40585f !important;
  font-size:.88rem !important;
  font-weight:750 !important;
  line-height:1.35 !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.sky-badges-page .sky-trophy-copy .sky-trophy-condition{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  color:#849397 !important;
  font-size:.68rem !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  letter-spacing:0 !important;
}
.sky-badges-page .sky-trophy-earned-condition,
.sky-badges-page .sky-trophy-copy > p:not(.sky-trophy-condition){
  display:none !important;
}
.sky-badges-page .sky-trophy-rate{
  position:static !important;
  align-self:center !important;
  min-width:58px !important;
  margin:0 !important;
  padding:0 !important;
  text-align:right !important;
}
.sky-badges-page .sky-trophy-rate span{
  font-size:.55rem !important;
  line-height:1.2 !important;
}
.sky-badges-page .sky-trophy-rate strong{
  margin-top:2px !important;
  font-size:.78rem !important;
}
.sky-badges-page .sky-badge-favorite{
  top:50% !important;
  right:10px !important;
  transform:translateY(-50%) !important;
  width:30px !important;
  height:30px !important;
}
.sky-badges-page .sky-badge-favorite:hover{
  transform:translateY(-50%) !important;
}
.sky-badges-page .sky-trophy.is-locked{
  opacity:.62 !important;
}
.sky-badges-page .sky-badge-category{
  margin-bottom:30px !important;
}
.sky-badges-page .sky-badge-category__head{
  margin-bottom:9px !important;
}

/* Tablet: still one clean row, rather than squeezing cards into columns. */
@media (max-width:900px){
  .sky-badges-page .sky-trophy-grid{
    grid-template-columns:1fr !important;
  }
}

/* Real phones: give the title/condition their own breathing room.
   Rate moves under the text instead of competing for horizontal width. */
@media (max-width:600px){
  .sky-badges-page{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  .sky-badge-overview{
    margin-bottom:30px !important;
    padding:20px 18px !important;
  }
  .sky-badge-category{
    margin-top:34px !important;
    margin-bottom:36px !important;
  }
  .sky-badge-category__head{
    margin:0 2px 12px !important;
  }
  .sky-badges-page .sky-trophy-grid{
    gap:10px !important;
  }
  .sky-badges-page .sky-trophy{
    grid-template-columns:48px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:13px !important;
    row-gap:7px !important;
    min-height:88px !important;
    padding:15px 48px 14px 14px !important;
    border-radius:14px !important;
  }
  .sky-badges-page .sky-trophy-emblem{
    grid-row:1 / span 2 !important;
    width:46px !important;
    min-width:46px !important;
    height:46px !important;
    align-self:start !important;
    margin-top:1px !important;
  }
  .sky-badges-page .sky-trophy-copy h3{
    margin-bottom:5px !important;
    font-size:.86rem !important;
    line-height:1.4 !important;
  }
  .sky-badges-page .sky-trophy-copy .sky-trophy-condition{
    font-size:.7rem !important;
    line-height:1.55 !important;
  }
  .sky-badges-page .sky-trophy-rate{
    grid-column:2 !important;
    display:flex !important;
    align-items:baseline !important;
    gap:5px !important;
    min-width:0 !important;
    text-align:left !important;
  }
  .sky-badges-page .sky-trophy-rate span,
  .sky-badges-page .sky-trophy-rate strong{
    display:inline !important;
    margin:0 !important;
  }
  .sky-badges-page .sky-badge-favorite{
    top:12px !important;
    right:10px !important;
    transform:none !important;
  }
  .sky-badges-page .sky-badge-favorite:hover{
    transform:none !important;
  }
}
@media (max-width:380px){
  .sky-badges-page .sky-trophy{
    grid-template-columns:42px minmax(0,1fr) !important;
    column-gap:11px !important;
    padding:14px 44px 14px 12px !important;
  }
  .sky-badges-page .sky-trophy-emblem{
    width:40px !important;
    min-width:40px !important;
    height:40px !important;
  }
}


/* =========================================================
 * v0.13.0 public shared profile
 * ========================================================= */
.sky-public-profile{
  width:100%;
  max-width:920px;
  margin:0 auto;
  display:grid;
  gap:18px;
}
.sky-public-playstyle{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.sky-public-playstyle__item{
  min-width:0;
  padding:12px 14px;
  border:1px solid rgba(72,96,100,.12);
  border-radius:14px;
  background:rgba(255,255,255,.8);
}
.sky-public-playstyle__item small{
  display:block;
  margin-bottom:4px;
  color:var(--sky-muted);
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.08em;
}
.sky-public-playstyle__item strong{
  display:block;
  color:var(--sky-text);
  font-size:.84rem;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.sky-public-profile__collection{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.sky-public-profile__collection > div{
  padding:15px 16px;
  border:1px solid rgba(72,96,100,.12);
  border-radius:16px;
  background:rgba(255,255,255,.78);
}
.sky-public-profile__collection span{
  display:block;
  color:var(--sky-muted);
  font-size:.68rem;
}
.sky-public-profile__collection strong{
  display:block;
  margin-top:4px;
  color:var(--sky-text);
  font-size:1.08rem;
}
.sky-public-seasons{
  padding:18px;
  border:1px solid rgba(72,96,100,.12);
  border-radius:18px;
  background:rgba(255,255,255,.78);
}
.sky-public-seasons__head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.sky-public-seasons__head span{
  color:var(--sky-muted);
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.09em;
}
.sky-public-seasons__head strong{
  color:var(--sky-muted);
  font-size:.7rem;
  font-weight:600;
}
.sky-public-seasons__icons{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.sky-public-season-icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:rgba(246,249,249,.95);
  border:1px solid rgba(72,96,100,.10);
}
.sky-public-season-icon img{
  width:34px;
  height:34px;
  object-fit:contain;
}
.sky-public-season-icon i{
  color:var(--sky-muted);
  font-style:normal;
}
@media(max-width:760px){
  .sky-public-profile{gap:14px}
  .sky-public-playstyle{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .sky-public-profile__collection{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .sky-public-profile__collection > div{padding:12px 10px}
  .sky-public-seasons{padding:15px}
  .sky-public-seasons__icons{gap:8px}
  .sky-public-season-icon{width:44px;height:44px}
  .sky-public-season-icon img{width:30px;height:30px}
}
@media(max-width:420px){
  .sky-public-playstyle__item{padding:11px 12px}
  .sky-public-profile__collection{grid-template-columns:1fr}
  .sky-public-seasons__head{display:block}
  .sky-public-seasons__head strong{display:block;margin-top:3px}
}


/* =========================================================
 * v0.13.1 PUBLIC PROFILE — dreamy Sky-inspired presentation
 * ========================================================= */
.sky-public-profile-shell{
  position:relative;
  width:100%;
  max-width:980px;
  margin:0 auto;
  overflow:hidden;
  border-radius:28px;
  background:
    radial-gradient(circle at 12% 8%, rgba(221,239,243,.62), transparent 30%),
    radial-gradient(circle at 88% 22%, rgba(232,243,246,.52), transparent 26%),
    #f9fbfb;
  border:1px solid rgba(79,105,109,.10);
  box-shadow:0 22px 70px rgba(54,79,83,.08);
}
.sky-public-profile-shell::before,
.sky-public-profile-shell::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border:1px solid rgba(104,135,139,.08);
  border-radius:50%;
}
.sky-public-profile-shell::before{
  width:430px;
  height:430px;
  top:-290px;
  right:-160px;
}
.sky-public-profile-shell::after{
  width:270px;
  height:270px;
  top:-155px;
  right:-55px;
}
.sky-public-profile{
  max-width:none!important;
  padding:24px;
  gap:18px!important;
}
.sky-public-profile-shell .sky-profile-summary{
  border:0!important;
  box-shadow:none!important;
  background:rgba(255,255,255,.76)!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.sky-public-profile-shell .sky-profile-summary--hero{
  min-height:280px;
}
.sky-public-profile-shell .sky-profile-summary::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 24%, rgba(255,255,255,.95) 0 1px, transparent 1.5px),
    radial-gradient(circle at 74% 18%, rgba(255,255,255,.82) 0 1px, transparent 1.5px),
    radial-gradient(circle at 62% 72%, rgba(197,221,226,.7) 0 1px, transparent 1.5px);
  background-size:90px 90px,120px 120px,150px 150px;
  opacity:.72;
}
.sky-public-profile-shell .sky-profile-summary__body,
.sky-public-profile-shell .sky-profile-summary__avatar,
.sky-public-profile-shell .sky-profile-pendant{
  position:relative;
  z-index:2;
}
.sky-public-profile-shell .sky-profile-summary__name-row h1{
  font-size:clamp(1.8rem,3vw,2.5rem)!important;
  letter-spacing:.02em;
}
.sky-public-profile-shell .sky-profile-birth{
  display:inline-flex!important;
  align-items:center;
  gap:7px;
  padding:7px 12px!important;
  border-radius:999px;
  background:rgba(238,246,247,.88);
  border:1px solid rgba(99,128,132,.10);
}
.sky-public-profile-shell .sky-profile-favorites{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px!important;
  margin-top:16px!important;
}
.sky-public-profile-shell .sky-profile-favorites > div{
  padding:10px 12px!important;
  border-radius:12px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(90,119,123,.08);
}
.sky-public-profile-shell .sky-profile-summary__bio{
  margin-top:16px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(89,118,122,.09);
}

/* Play style becomes a lightweight identity strip */
.sky-public-playstyle{
  position:relative;
  z-index:2;
  gap:8px!important;
  padding:2px 0;
}
.sky-public-playstyle__item{
  position:relative;
  overflow:hidden;
  padding:14px 14px!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(83,112,116,.09)!important;
  box-shadow:0 8px 24px rgba(68,94,98,.04);
}
.sky-public-playstyle__item::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:2px;
  background:rgba(137,177,184,.18);
}
.sky-public-playstyle__item small{
  letter-spacing:.12em!important;
  font-size:.58rem!important;
}
.sky-public-playstyle__item strong{
  margin-top:2px;
  font-size:.86rem!important;
}

/* Collection cards get depth without becoming gamey */
.sky-public-profile__collection{
  gap:10px!important;
}
.sky-public-profile__collection > div{
  position:relative;
  min-height:96px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:16px 17px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.76)!important;
  border:1px solid rgba(83,112,116,.09)!important;
  overflow:hidden;
}
.sky-public-profile__collection > div::before{
  content:"◇";
  position:absolute;
  top:10px;
  right:13px;
  color:rgba(118,155,161,.16);
  font-size:1.35rem;
}
.sky-public-profile__collection span{
  font-size:.65rem!important;
  letter-spacing:.04em;
}
.sky-public-profile__collection strong{
  font-size:1.25rem!important;
}

/* Completed seasons: jewelry tray / constellation feel */
.sky-public-seasons{
  position:relative;
  overflow:hidden;
  padding:20px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.72)!important;
  border:1px solid rgba(83,112,116,.09)!important;
}
.sky-public-seasons::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-85px;
  bottom:-100px;
  border:1px solid rgba(103,137,142,.08);
  border-radius:50%;
}
.sky-public-seasons__head{
  position:relative;
  z-index:2;
}
.sky-public-seasons__icons{
  position:relative;
  z-index:2;
  gap:12px!important;
}
.sky-public-season-icon{
  position:relative;
  width:54px!important;
  height:54px!important;
  border:0!important;
  background:rgba(247,250,250,.9)!important;
  box-shadow:
    inset 0 0 0 1px rgba(83,112,116,.08),
    0 7px 18px rgba(77,102,106,.05);
  transition:transform .25s ease, box-shadow .25s ease;
}
.sky-public-season-icon::after{
  content:"";
  position:absolute;
  inset:-4px;
  border-radius:50%;
  border:1px solid rgba(163,197,202,.16);
  opacity:.7;
}
.sky-public-season-icon:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:
    inset 0 0 0 1px rgba(83,112,116,.08),
    0 12px 25px rgba(77,102,106,.09);
}

/* Loading scene */
.sky-public-profile-loader{
  position:absolute;
  inset:0;
  z-index:20;
  display:grid;
  place-items:center;
  align-content:center;
  gap:12px;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.92), rgba(241,247,248,.96) 58%, rgba(235,244,246,.98));
  transition:opacity .55s ease, visibility .55s ease;
}
.sky-public-profile-loader p{
  margin:0;
  color:#7a9296;
  font-size:.72rem;
  letter-spacing:.08em;
}
.sky-loader-mark{
  color:#87aeb4;
  font-size:1.5rem;
  animation:skyLoaderPulse 1.5s ease-in-out infinite;
}
.sky-loader-sky{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.sky-loader-star{
  position:absolute;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 12px rgba(255,255,255,.95);
  opacity:.8;
  animation:skyTwinkle 1.7s ease-in-out infinite;
}
.sky-loader-star--1{left:18%;top:26%;animation-delay:.2s}
.sky-loader-star--2{left:74%;top:22%;animation-delay:.7s}
.sky-loader-star--3{left:61%;top:66%;animation-delay:1.1s}
.sky-loader-star--4{left:27%;top:72%;animation-delay:.45s}
.sky-loader-shooting-star{
  position:absolute;
  top:22%;
  left:-20%;
  width:120px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.92));
  transform:rotate(-18deg);
  filter:drop-shadow(0 0 7px rgba(255,255,255,.9));
  animation:skyShootingStar 1.35s ease-out .18s both;
}
.sky-public-profile-shell.is-ready .sky-public-profile-loader{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.sky-public-profile-shell [data-public-profile-content]{
  opacity:0;
  transform:translateY(10px);
}
.sky-public-profile-shell.is-ready [data-public-profile-content]{
  opacity:1;
  transform:none;
  transition:opacity .6s ease .08s, transform .6s ease .08s;
}
.sky-public-profile-shell.is-ready .sky-public-playstyle__item,
.sky-public-profile-shell.is-ready .sky-public-profile__collection > div,
.sky-public-profile-shell.is-ready .sky-public-season-icon{
  animation:skyProfileReveal .55s ease both;
}
.sky-public-profile-shell.is-ready .sky-public-playstyle__item:nth-child(2){animation-delay:.05s}
.sky-public-profile-shell.is-ready .sky-public-playstyle__item:nth-child(3){animation-delay:.10s}
.sky-public-profile-shell.is-ready .sky-public-playstyle__item:nth-child(4){animation-delay:.15s}
.sky-public-profile-shell.is-ready .sky-public-playstyle__item:nth-child(5){animation-delay:.20s}

@keyframes skyShootingStar{
  0%{transform:translate(-10vw,-5vh) rotate(-18deg);opacity:0}
  15%{opacity:1}
  100%{transform:translate(120vw,34vh) rotate(-18deg);opacity:0}
}
@keyframes skyTwinkle{
  0%,100%{opacity:.25;transform:scale(.8)}
  50%{opacity:1;transform:scale(1.35)}
}
@keyframes skyLoaderPulse{
  0%,100%{opacity:.55;transform:scale(.95)}
  50%{opacity:1;transform:scale(1.08)}
}
@keyframes skyProfileReveal{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:none}
}

@media(max-width:760px){
  .sky-public-profile{
    padding:14px!important;
    gap:12px!important;
  }
  .sky-public-profile-shell{
    border-radius:20px;
  }
  .sky-public-profile-shell .sky-profile-summary--hero{
    min-height:auto;
  }
  .sky-public-profile-shell .sky-profile-favorites{
    grid-template-columns:1fr!important;
  }
  .sky-public-playstyle{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .sky-public-profile__collection{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .sky-public-profile__collection > div{
    min-height:82px;
  }
  .sky-public-season-icon{
    width:48px!important;
    height:48px!important;
  }
}
@media(max-width:480px){
  .sky-public-profile{
    padding:10px!important;
  }
  .sky-public-profile__collection{
    grid-template-columns:1fr!important;
  }
  .sky-public-playstyle__item{
    padding:12px!important;
  }
  .sky-public-seasons{
    padding:16px!important;
  }
}

@media (prefers-reduced-motion: reduce){
  .sky-loader-shooting-star,
  .sky-loader-star,
  .sky-loader-mark,
  .sky-public-profile-shell.is-ready .sky-public-playstyle__item,
  .sky-public-profile-shell.is-ready .sky-public-profile__collection > div,
  .sky-public-profile-shell.is-ready .sky-public-season-icon{
    animation:none!important;
  }
}


/* =========================================================
 * v0.13.2 PUBLIC PROFILE
 * Mobile-first editorial profile. One continuous composition,
 * not a stack of unrelated cards.
 * ========================================================= */
.sky-public-profile-shell{
  max-width:960px!important;
  overflow:hidden!important;
  border-radius:26px!important;
  border:1px solid rgba(74,105,110,.10)!important;
  background:#f7faf9!important;
  box-shadow:0 20px 55px rgba(55,82,86,.07)!important;
}
.sky-public-profile-shell::before{
  width:340px!important;height:340px!important;
  top:-220px!important;right:-145px!important;
  border-color:rgba(96,132,137,.08)!important;
}
.sky-public-profile-shell::after{
  width:220px!important;height:220px!important;
  top:-135px!important;right:-55px!important;
  border-color:rgba(96,132,137,.06)!important;
}
.sky-public-profile{
  padding:22px!important;
  gap:0!important;
  background:transparent!important;
}

/* The hero stays the visual focus. */
.sky-public-profile-shell .sky-profile-summary{
  margin:0!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.82)!important;
  box-shadow:none!important;
}
.sky-public-profile-shell .sky-profile-favorites{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.sky-public-profile-shell .sky-profile-favorites > div{
  background:transparent!important;
  border:0!important;
  padding:5px 0!important;
}

/* A single "about this player" rail instead of five floating cards. */
.sky-public-playstyle{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  margin:18px 8px 0!important;
  padding:14px 0!important;
  border-top:1px solid rgba(75,106,111,.10)!important;
  border-bottom:1px solid rgba(75,106,111,.10)!important;
}
.sky-public-playstyle__item{
  flex:1 1 20%!important;
  min-width:120px!important;
  padding:4px 15px!important;
  border:0!important;
  border-right:1px solid rgba(75,106,111,.09)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.sky-public-playstyle__item:last-child{border-right:0!important}
.sky-public-playstyle__item::before{display:none!important}
.sky-public-playstyle__item small{
  margin:0 0 5px!important;
  color:#9aabad!important;
  font-size:.58rem!important;
  letter-spacing:.13em!important;
}
.sky-public-playstyle__item strong{
  color:#415c61!important;
  font-size:.84rem!important;
  font-weight:650!important;
}

/* Collection = three large stats on one quiet surface. */
.sky-public-profile__collection{
  position:relative!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  margin:0 8px!important;
  padding:30px 0 26px!important;
}
.sky-public-profile__collection > div{
  min-height:0!important;
  display:block!important;
  padding:0 20px!important;
  border:0!important;
  border-right:1px solid rgba(75,106,111,.09)!important;
  border-radius:0!important;
  background:transparent!important;
  text-align:center!important;
  overflow:visible!important;
}
.sky-public-profile__collection > div:last-child{border-right:0!important}
.sky-public-profile__collection > div::before{display:none!important}
.sky-public-profile__collection span{
  margin-bottom:7px!important;
  color:#98aaad!important;
  font-size:.62rem!important;
  letter-spacing:.06em!important;
}
.sky-public-profile__collection strong{
  margin:0!important;
  color:#405b60!important;
  font-size:1.35rem!important;
  font-weight:650!important;
}

/* Completed seasons = a clean collection shelf, not another grey card. */
.sky-public-seasons{
  margin:0 8px 8px!important;
  padding:22px 0 4px!important;
  border:0!important;
  border-top:1px solid rgba(75,106,111,.10)!important;
  border-radius:0!important;
  background:transparent!important;
}
.sky-public-seasons::after{display:none!important}
.sky-public-seasons__head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin-bottom:16px!important;
}
.sky-public-seasons__head span{
  color:#627d82!important;
  font-size:.62rem!important;
  letter-spacing:.14em!important;
}
.sky-public-seasons__head strong{
  color:#a0afb1!important;
  font-size:.64rem!important;
  font-weight:500!important;
}
.sky-public-seasons__icons{
  gap:11px!important;
}
.sky-public-season-icon{
  width:46px!important;height:46px!important;
  border:0!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(65,91,96,.06)!important;
}
.sky-public-season-icon::after{
  inset:-3px!important;
  border-color:rgba(119,156,162,.13)!important;
}

/* Mobile: preserve rhythm and make it feel intentionally designed. */
@media(max-width:760px){
  .sky-public-profile-shell{
    width:calc(100% - 20px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    border-radius:22px!important;
  }
  .sky-public-profile{
    padding:10px!important;
  }
  .sky-public-profile-shell .sky-profile-summary{
    border-radius:18px!important;
  }
  .sky-public-profile-shell .sky-profile-favorites{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .sky-public-playstyle{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin:10px 8px 0!important;
    padding:8px 0!important;
  }
  .sky-public-playstyle__item{
    min-width:0!important;
    padding:10px 11px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(75,106,111,.08)!important;
  }
  .sky-public-playstyle__item:nth-child(odd){
    border-right:1px solid rgba(75,106,111,.08)!important;
  }
  .sky-public-playstyle__item:nth-last-child(-n+2){
    border-bottom:0!important;
  }
  .sky-public-profile__collection{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    margin:0 8px!important;
    padding:22px 0!important;
  }
  .sky-public-profile__collection > div{
    padding:0 7px!important;
  }
  .sky-public-profile__collection span{
    font-size:.57rem!important;
  }
  .sky-public-profile__collection strong{
    font-size:1.02rem!important;
    white-space:nowrap!important;
  }
  .sky-public-seasons{
    margin:0 8px 5px!important;
    padding-top:18px!important;
  }
  .sky-public-seasons__head{
    display:flex!important;
    margin-bottom:13px!important;
  }
  .sky-public-season-icon{
    width:43px!important;height:43px!important;
  }
}
@media(max-width:390px){
  .sky-public-profile-shell{
    width:calc(100% - 12px)!important;
  }
  .sky-public-profile{
    padding:7px!important;
  }
  .sky-public-profile-shell .sky-profile-favorites{
    grid-template-columns:1fr!important;
  }
  .sky-public-profile-shell .sky-profile-favorites > div{
    padding:4px 0!important;
  }
  .sky-public-playstyle__item{
    padding:9px!important;
  }
  .sky-public-profile__collection{
    padding:19px 0!important;
  }
  .sky-public-profile__collection > div{
    padding:0 4px!important;
  }
  .sky-public-profile__collection strong{
    font-size:.92rem!important;
  }
  .sky-public-seasons__head{
    display:block!important;
  }
  .sky-public-seasons__head strong{
    display:block!important;
    margin-top:3px!important;
  }
}


/* =========================================================
 * v0.13.3 PUBLIC PROFILE — warmer, more social, less dashboard-like
 * ========================================================= */
.sky-public-profile-shell{
  background:
    radial-gradient(circle at 50% 0%, rgba(229,240,241,.78), transparent 34%),
    #f8faf9!important;
}

/* hero: slightly more compact so the "person" appears sooner */
.sky-public-profile-shell .sky-profile-summary--hero{
  min-height:245px!important;
}
.sky-public-profile-shell .sky-profile-summary{
  padding-bottom:22px!important;
}
.sky-public-profile-shell .sky-profile-summary__bio{
  font-size:.84rem!important;
  line-height:1.75!important;
  color:#61777b!important;
}

/* section labels */
.sky-public-vibe,
.sky-public-collection-wrap{
  margin:18px 8px 0!important;
}
.sky-public-vibe__heading,
.sky-public-collection-wrap__heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  margin:0 2px 10px;
}
.sky-public-vibe__heading span,
.sky-public-collection-wrap__heading span{
  color:#8fa3a6;
  font-size:.58rem;
  font-weight:700;
  letter-spacing:.15em;
}
.sky-public-vibe__heading strong,
.sky-public-collection-wrap__heading strong{
  color:#536d72;
  font-size:.76rem;
  font-weight:650;
}

/* playstyle = chips/phrases, not table */
.sky-public-vibe .sky-public-playstyle{
  margin:0!important;
  padding:0!important;
  border:0!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.sky-public-vibe .sky-public-playstyle__item{
  flex:0 1 auto!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 12px!important;
  border:1px solid rgba(79,107,112,.09)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.80)!important;
}
.sky-public-vibe .sky-public-playstyle__item::before{display:none!important}
.sky-public-vibe .sky-public-playstyle__item small{
  margin:0!important;
  color:#a0afb1!important;
  font-size:.55rem!important;
  letter-spacing:.11em!important;
}
.sky-public-vibe .sky-public-playstyle__item strong{
  margin:0!important;
  color:#415d62!important;
  font-size:.78rem!important;
  font-weight:650!important;
  white-space:normal!important;
}

/* collection: one quiet strip, not 3 separate dashboard cards */
.sky-public-collection-wrap{
  padding-top:4px;
}
.sky-public-collection-wrap .sky-public-profile__collection{
  margin:0!important;
  padding:18px 0 20px!important;
  border-top:1px solid rgba(75,106,111,.09);
  border-bottom:1px solid rgba(75,106,111,.09);
}
.sky-public-collection-wrap .sky-public-profile__collection > div{
  position:relative;
}
.sky-public-collection-wrap .sky-public-profile__collection span{
  font-size:.59rem!important;
}
.sky-public-collection-wrap .sky-public-profile__collection strong{
  font-size:1.22rem!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div:first-child::after{
  content:"✦";
  display:block;
  margin-top:5px;
  color:rgba(114,151,156,.20);
  font-size:.8rem;
}

/* completed season shelf should feel like personal history */
.sky-public-seasons{
  margin-top:18px!important;
}
.sky-public-seasons__head span{
  color:#789096!important;
}
.sky-public-seasons__head strong{
  color:#a0afb1!important;
}
.sky-public-season-icon{
  transition:transform .24s ease, box-shadow .24s ease!important;
}
.sky-public-season-icon:hover{
  transform:translateY(-2px) scale(1.03)!important;
}

/* soften all the "boxed" feeling */
.sky-public-profile-shell .sky-profile-summary,
.sky-public-vibe .sky-public-playstyle__item,
.sky-public-season-icon{
  box-shadow:0 8px 26px rgba(65,91,96,.035)!important;
}

/* Mobile: social chips stack naturally and stay readable */
@media(max-width:760px){
  .sky-public-vibe,
  .sky-public-collection-wrap{
    margin:14px 8px 0!important;
  }
  .sky-public-vibe__heading,
  .sky-public-collection-wrap__heading{
    display:block;
    margin-bottom:9px;
  }
  .sky-public-vibe__heading strong,
  .sky-public-collection-wrap__heading strong{
    display:block;
    margin-top:3px;
    font-size:.72rem;
  }
  .sky-public-vibe .sky-public-playstyle{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
  }
  .sky-public-vibe .sky-public-playstyle__item{
    flex:0 1 auto!important;
    padding:8px 10px!important;
    border-bottom:1px solid rgba(79,107,112,.09)!important;
    border-right:1px solid rgba(79,107,112,.09)!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    padding:16px 0 18px!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection > div{
    padding:0 5px!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection strong{
    font-size:1rem!important;
  }
}
@media(max-width:390px){
  .sky-public-vibe .sky-public-playstyle__item{
    flex:1 1 calc(50% - 4px)!important;
    border-radius:14px!important;
  }
  .sky-public-vibe .sky-public-playstyle__item small{
    display:block!important;
  }
}


/* =========================================================
 * v0.14.0 PUBLIC PROFILE — luminous night-sky card
 * CSS-only atmosphere: no background artwork required.
 * ========================================================= */
.sky-public-profile-shell{
  --sky-night-1:#153f76;
  --sky-night-2:#356ca5;
  --sky-night-3:#789ec1;
  --sky-glass:rgba(255,255,255,.10);
  --sky-glass-strong:rgba(255,255,255,.15);
  --sky-line:rgba(255,255,255,.25);
  --sky-gold:#f4e2ad;
  --sky-ink:#f9fbff;

  max-width:920px!important;
  border-radius:30px!important;
  border:1px solid rgba(187,218,239,.58)!important;
  background:
    radial-gradient(circle at 12% 8%, rgba(255,255,255,.95) 0 1px, transparent 1.7px),
    radial-gradient(circle at 79% 13%, rgba(255,244,201,.85) 0 1.3px, transparent 2px),
    radial-gradient(circle at 22% 33%, rgba(255,255,255,.65) 0 1px, transparent 1.6px),
    radial-gradient(circle at 87% 42%, rgba(255,255,255,.65) 0 1px, transparent 1.5px),
    radial-gradient(circle at 65% 72%, rgba(255,248,217,.55) 0 1px, transparent 1.6px),
    linear-gradient(180deg,var(--sky-night-1) 0%,var(--sky-night-2) 47%,var(--sky-night-3) 100%)!important;
  background-size:127px 127px,171px 171px,213px 213px,257px 257px,301px 301px,100% 100%!important;
  box-shadow:
    0 28px 75px rgba(38,72,108,.18),
    inset 0 0 70px rgba(255,255,255,.05)!important;
  color:var(--sky-ink)!important;
}
.sky-public-profile-shell::before{
  width:520px!important;height:520px!important;
  top:-340px!important;right:-190px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 0 60px rgba(255,255,255,.05);
}
.sky-public-profile-shell::after{
  width:330px!important;height:330px!important;
  top:-200px!important;right:-70px!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.sky-public-profile{
  position:relative;
  z-index:1;
  padding:24px!important;
}
.sky-public-profile::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-8%;
  right:-8%;
  bottom:-40px;
  height:240px;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 15% 100%,rgba(238,247,255,.70),transparent 38%),
    radial-gradient(ellipse at 55% 100%,rgba(224,240,252,.55),transparent 42%),
    radial-gradient(ellipse at 92% 100%,rgba(240,247,255,.62),transparent 38%);
  filter:blur(1px);
  opacity:.72;
}

/* Hero becomes the luminous focal area */
.sky-public-profile-shell .sky-profile-summary{
  position:relative;
  overflow:hidden;
  color:var(--sky-ink)!important;
  background:
    radial-gradient(circle at 78% 20%,rgba(255,255,255,.14),transparent 28%),
    linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.055))!important;
  border:1px solid rgba(255,255,255,.23)!important;
  border-radius:25px!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 16px 38px rgba(18,50,85,.12)!important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.sky-public-profile-shell .sky-profile-summary::after{
  content:"";
  position:absolute;
  top:-42px;
  right:-20px;
  width:190px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent);
  transform:rotate(-31deg);
  box-shadow:0 0 10px rgba(255,255,255,.7);
  opacity:.62;
}
.sky-public-profile-shell .sky-profile-summary__avatar{
  border:4px solid rgba(255,255,255,.88)!important;
  box-shadow:
    0 0 0 3px rgba(238,218,160,.35),
    0 0 28px rgba(255,238,183,.35)!important;
}
.sky-public-profile-shell .sky-profile-summary__name-row h1,
.sky-public-profile-shell .sky-profile-summary__handle,
.sky-public-profile-shell .sky-profile-summary__bio,
.sky-public-profile-shell .sky-profile-favorites strong,
.sky-public-profile-shell .sky-profile-favorites span,
.sky-public-profile-shell .sky-profile-birth{
  color:var(--sky-ink)!important;
}
.sky-public-profile-shell .sky-profile-summary__handle{
  opacity:.78!important;
}
.sky-public-profile-shell .sky-profile-birth{
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13);
}
.sky-public-profile-shell .sky-profile-favorites{
  gap:10px!important;
}
.sky-public-profile-shell .sky-profile-favorites > div{
  padding:14px 12px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.085)!important;
}
.sky-public-profile-shell .sky-profile-favorites span{
  opacity:.64!important;
}
.sky-public-profile-shell .sky-profile-summary__bio{
  border-top-color:rgba(255,255,255,.15)!important;
}
.sky-public-profile-shell .sky-profile-achievement,
.sky-public-profile-shell .sky-profile-badge{
  color:#fff!important;
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.23)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13)!important;
}

/* Section typography */
.sky-public-vibe__heading span,
.sky-public-collection-wrap__heading span,
.sky-public-seasons__head span{
  color:rgba(255,255,255,.94)!important;
  text-shadow:0 1px 8px rgba(16,45,77,.20);
}
.sky-public-vibe__heading strong,
.sky-public-collection-wrap__heading strong{
  color:rgba(255,255,255,.68)!important;
}
.sky-public-vibe__heading::before,
.sky-public-collection-wrap__heading::before,
.sky-public-seasons__head::before{
  content:"✦";
  margin-right:8px;
  color:var(--sky-gold);
  font-size:.7rem;
  text-shadow:0 0 10px rgba(255,233,171,.65);
}

/* Play-style glass pills */
.sky-public-vibe{
  margin-top:20px!important;
  padding:20px!important;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:rgba(20,57,97,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09);
}
.sky-public-vibe .sky-public-playstyle__item{
  color:#fff!important;
  background:rgba(255,255,255,.11)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 7px 20px rgba(19,52,88,.08)!important;
}
.sky-public-vibe .sky-public-playstyle__item::after{
  content:"✦";
  order:-1;
  color:rgba(255,239,190,.92);
  font-size:.65rem;
  text-shadow:0 0 8px rgba(255,235,174,.55);
}
.sky-public-vibe .sky-public-playstyle__item small{
  color:rgba(255,255,255,.60)!important;
}
.sky-public-vibe .sky-public-playstyle__item strong{
  color:#fff!important;
}

/* Collection = one luminous glass plate */
.sky-public-collection-wrap{
  margin-top:16px!important;
  padding:20px!important;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:rgba(20,57,97,.14);
}
.sky-public-collection-wrap .sky-public-profile__collection{
  border-top-color:rgba(255,255,255,.14)!important;
  border-bottom:0!important;
  padding-bottom:2px!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div{
  border-right-color:rgba(255,255,255,.17)!important;
}
.sky-public-collection-wrap .sky-public-profile__collection span{
  color:rgba(255,255,255,.65)!important;
}
.sky-public-collection-wrap .sky-public-profile__collection strong{
  color:#fff!important;
  text-shadow:0 1px 12px rgba(18,47,78,.20);
}
.sky-public-collection-wrap .sky-public-profile__collection > div:first-child::after{
  color:var(--sky-gold)!important;
  text-shadow:0 0 8px rgba(255,236,179,.5);
}

/* Season shelf */
.sky-public-seasons{
  margin-top:16px!important;
  padding:20px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:22px!important;
  background:rgba(20,57,97,.13)!important;
}
.sky-public-seasons__head{
  justify-content:flex-start!important;
}
.sky-public-seasons__head strong{
  display:none!important;
}
.sky-public-season-icon{
  width:52px!important;height:52px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(255,244,206,.75)!important;
  box-shadow:
    0 0 0 3px rgba(255,255,255,.08),
    0 0 20px rgba(255,230,163,.20)!important;
}
.sky-public-season-icon::after{
  border-color:rgba(255,233,169,.50)!important;
}
.sky-public-season-icon:hover{
  transform:translateY(-3px) scale(1.05)!important;
  box-shadow:
    0 0 0 3px rgba(255,255,255,.10),
    0 0 27px rgba(255,229,158,.34)!important;
}

/* Animated shooting stars after the loader has disappeared. */
.sky-public-profile-shell .sky-public-profile::after{
  content:"";
  position:absolute;
  z-index:6;
  top:54px;
  left:-170px;
  width:150px;
  height:2px;
  pointer-events:none;
  opacity:0;
  border-radius:999px;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.18) 28%,#fff 82%,#fff 100%);
  box-shadow:
    74px 0 7px rgba(255,255,255,.85),
    76px 0 15px rgba(194,229,255,.75);
  transform:rotate(-24deg);
}
.sky-public-profile-shell.is-ready .sky-public-profile::after{
  animation:skyProfileMeteor 7.2s cubic-bezier(.18,.72,.28,1) 1.1s infinite;
}
@keyframes skyProfileMeteor{
  0%,68%{opacity:0;transform:translate3d(0,0,0) rotate(-24deg) scaleX(.65)}
  70%{opacity:0}
  72%{opacity:1}
  79%{opacity:.92}
  84%{opacity:0;transform:translate3d(1150px,420px,0) rotate(-24deg) scaleX(1.05)}
  100%{opacity:0;transform:translate3d(1150px,420px,0) rotate(-24deg)}
}

/* A second tiny sparkle meteor made from the shell itself */
.sky-public-profile-shell.is-ready::after{
  animation:skyProfileTinyMeteor 9.5s ease-in-out 3.6s infinite;
}
@keyframes skyProfileTinyMeteor{
  0%,76%,100%{
    opacity:.15;
    box-shadow:none;
  }
  78%{
    opacity:.75;
    box-shadow:-120px 120px 0 -164px rgba(255,255,255,.95);
  }
  82%{opacity:.12}
}

@media(max-width:760px){
  .sky-public-profile-shell{
    width:calc(100% - 16px)!important;
    border-radius:23px!important;
  }
  .sky-public-profile{
    padding:9px!important;
  }
  .sky-public-profile-shell .sky-profile-summary{
    border-radius:19px!important;
  }
  .sky-public-vibe,
  .sky-public-collection-wrap,
  .sky-public-seasons{
    margin-left:4px!important;
    margin-right:4px!important;
    padding:15px!important;
    border-radius:18px!important;
  }
  .sky-public-vibe .sky-public-playstyle__item{
    flex:1 1 calc(50% - 4px)!important;
    border-radius:999px!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  .sky-public-seasons__icons{
    gap:10px!important;
  }
}
@media(max-width:390px){
  .sky-public-vibe .sky-public-playstyle__item{
    flex:1 1 100%!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection strong{
    font-size:.92rem!important;
  }
}

/* Keep animation optional for accessibility. */
@media(prefers-reduced-motion:reduce){
  .sky-public-profile-shell.is-ready .sky-public-profile::after,
  .sky-public-profile-shell.is-ready::after{
    animation:none!important;
  }
}


/* =========================================================
 * v0.14.1 PUBLIC PROFILE — clean luminous profile
 * ========================================================= */

/* No dark night background on the profile itself. */
.sky-public-profile-shell{
  width:min(100%,920px)!important;
  max-width:920px!important;
  margin:0 auto!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border-radius:28px!important;
  border:1px solid rgba(78,109,115,.11)!important;
  background:
    radial-gradient(circle at 82% 6%,rgba(212,235,239,.40),transparent 25%),
    radial-gradient(circle at 14% 20%,rgba(236,245,246,.72),transparent 34%),
    #fbfcfc!important;
  box-shadow:0 22px 60px rgba(60,87,92,.08)!important;
  color:#415c61!important;
}
.sky-public-profile-shell::before,
.sky-public-profile-shell::after{
  border-color:rgba(107,143,148,.08)!important;
  box-shadow:none!important;
  animation:none!important;
}
.sky-public-profile{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:20px!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
.sky-public-profile::before,
.sky-public-profile::after{
  display:none!important;
}

/* Hero back to soft glass, centered and balanced. */
.sky-public-profile-shell .sky-profile-summary{
  width:100%!important;
  margin:0 auto!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  color:#415c61!important;
  background:rgba(255,255,255,.84)!important;
  border:1px solid rgba(80,110,115,.10)!important;
  box-shadow:0 12px 34px rgba(62,88,93,.05)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.sky-public-profile-shell .sky-profile-summary::after{
  display:none!important;
}
.sky-public-profile-shell .sky-profile-summary__name-row h1,
.sky-public-profile-shell .sky-profile-summary__sns,
.sky-public-profile-shell .sky-profile-summary__bio,
.sky-public-profile-shell .sky-profile-favorites strong,
.sky-public-profile-shell .sky-profile-birth{
  color:#415c61!important;
}
.sky-public-profile-shell .sky-profile-birth{
  background:rgba(237,246,247,.92)!important;
  border-color:rgba(94,128,133,.11)!important;
  box-shadow:none!important;
}
.sky-public-profile-shell .sky-profile-favorites > div{
  background:rgba(255,255,255,.58)!important;
  border-color:rgba(80,110,115,.08)!important;
}
.sky-public-profile-shell .sky-profile-summary__avatar{
  border-color:#fff!important;
  box-shadow:0 0 0 1px rgba(78,108,113,.08),0 8px 22px rgba(61,87,92,.08)!important;
}

/* Section heads: English only. */
.sky-public-vibe__heading,
.sky-public-collection-wrap__heading,
.sky-public-seasons__head{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  margin:0 0 12px!important;
}
.sky-public-vibe__heading strong,
.sky-public-collection-wrap__heading strong,
.sky-public-seasons__head strong{
  display:none!important;
}
.sky-public-vibe__heading span,
.sky-public-collection-wrap__heading span,
.sky-public-seasons__head span{
  color:#667f84!important;
  font-size:.62rem!important;
  font-weight:750!important;
  letter-spacing:.15em!important;
  text-shadow:none!important;
}
.sky-public-vibe__heading::before,
.sky-public-collection-wrap__heading::before,
.sky-public-seasons__head::before{
  content:"✦";
  margin:0!important;
  color:#a4c2c7!important;
  font-size:.72rem!important;
  text-shadow:none!important;
}

/* White/frosted surfaces only, no blue blocks. */
.sky-public-vibe,
.sky-public-collection-wrap,
.sky-public-seasons{
  margin:16px 0 0!important;
  padding:18px!important;
  border:1px solid rgba(79,108,113,.09)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 8px 26px rgba(62,88,93,.035)!important;
}
.sky-public-vibe .sky-public-playstyle{
  margin:0!important;
  padding:0!important;
}
.sky-public-vibe .sky-public-playstyle__item{
  color:#415c61!important;
  background:#fff!important;
  border:1px solid rgba(79,108,113,.10)!important;
  box-shadow:none!important;
}
.sky-public-vibe .sky-public-playstyle__item::after{
  color:#9dbdc2!important;
  text-shadow:none!important;
}
.sky-public-vibe .sky-public-playstyle__item small{
  color:#96a8ab!important;
}
.sky-public-vibe .sky-public-playstyle__item strong{
  color:#415c61!important;
}

/* Collection strip */
.sky-public-collection-wrap .sky-public-profile__collection{
  margin:0!important;
  padding:16px 0 2px!important;
  border-top:1px solid rgba(79,108,113,.08)!important;
  border-bottom:0!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div{
  border-right-color:rgba(79,108,113,.08)!important;
}
.sky-public-collection-wrap .sky-public-profile__collection span{
  color:#90a3a6!important;
}
.sky-public-collection-wrap .sky-public-profile__collection strong{
  color:#415c61!important;
  text-shadow:none!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div:first-child::after{
  color:#a4c2c7!important;
  text-shadow:none!important;
}

/* Season collection */
.sky-public-season-icon{
  background:#fff!important;
  border:1px solid rgba(118,157,163,.15)!important;
  box-shadow:0 5px 18px rgba(63,88,93,.06)!important;
}
.sky-public-season-icon::after{
  border-color:rgba(118,157,163,.12)!important;
}

/* =========================================================
 * Fixed full-screen loader. This is the actual meteor scene.
 * ========================================================= */
.sky-public-profile-loader{
  position:fixed!important;
  inset:0!important;
  z-index:999999!important;
  min-height:100dvh!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  gap:12px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 38%,rgba(255,255,255,.98),rgba(239,247,248,.97) 55%,rgba(228,241,244,.98))!important;
  opacity:1!important;
  visibility:visible!important;
  transition:opacity .55s ease,visibility .55s ease!important;
}
.sky-public-profile-shell.is-ready .sky-public-profile-loader{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.sky-loader-sky{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
}
.sky-loader-mark{
  position:relative!important;
  z-index:3!important;
  color:#7faab1!important;
  font-size:1.65rem!important;
  text-shadow:0 0 16px rgba(128,174,181,.24)!important;
}
.sky-public-profile-loader p{
  position:relative!important;
  z-index:3!important;
  margin:0!important;
  color:#789196!important;
  font-size:.72rem!important;
  letter-spacing:.08em!important;
}

/* Make the meteor unmistakable: bright head + long fading tail. */
.sky-loader-shooting-star{
  position:absolute!important;
  z-index:2!important;
  top:22%!important;
  left:-42vw!important;
  width:42vw!important;
  max-width:420px!important;
  min-width:220px!important;
  height:2px!important;
  opacity:0;
  border-radius:999px!important;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(157,205,214,.06) 18%,
    rgba(126,189,201,.24) 54%,
    rgba(255,255,255,.96) 92%,
    #fff 100%
  )!important;
  box-shadow:
    100% 0 9px rgba(255,255,255,.95),
    100% 0 22px rgba(120,190,202,.70)!important;
  transform:rotate(-19deg)!important;
  transform-origin:right center!important;
  animation:skyLoaderMeteorVisible 1.25s cubic-bezier(.16,.69,.23,1) .14s both!important;
}
.sky-loader-shooting-star::after{
  content:"";
  position:absolute;
  right:-4px;
  top:50%;
  width:7px;
  height:7px;
  transform:translateY(-50%);
  border-radius:50%;
  background:#fff;
  box-shadow:
    0 0 9px #fff,
    0 0 22px rgba(119,191,203,.85),
    0 0 35px rgba(119,191,203,.42);
}
@keyframes skyLoaderMeteorVisible{
  0%{
    opacity:0;
    transform:translate3d(-12vw,-4vh,0) rotate(-19deg) scaleX(.62);
  }
  12%{opacity:1}
  72%{opacity:1}
  100%{
    opacity:0;
    transform:translate3d(155vw,52vh,0) rotate(-19deg) scaleX(1.06);
  }
}
.sky-loader-star{
  background:#9bc1c8!important;
  box-shadow:0 0 10px rgba(144,194,202,.48)!important;
}
html.sky-public-is-loading,
html.sky-public-is-loading body{
  overflow:hidden!important;
}

/* Reveal centered, without sideways motion. */
.sky-public-profile-shell [data-public-profile-content]{
  opacity:0!important;
  transform:translateY(8px)!important;
}
.sky-public-profile-shell.is-ready [data-public-profile-content]{
  opacity:1!important;
  transform:none!important;
  transition:opacity .55s ease .05s,transform .55s ease .05s!important;
}

/* Remove post-load meteor from the card itself. */
.sky-public-profile-shell.is-ready .sky-public-profile::after{
  display:none!important;
  animation:none!important;
}

/* Mobile centering and anti-right-shift overrides */
@media(max-width:760px){
  .sky-public-profile-shell{
    width:calc(100% - 16px)!important;
    max-width:calc(100% - 16px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .sky-public-profile{
    width:100%!important;
    padding:8px!important;
    margin:0!important;
  }
  .sky-public-profile-shell .sky-profile-summary{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
  .sky-public-vibe,
  .sky-public-collection-wrap,
  .sky-public-seasons{
    width:100%!important;
    margin:12px 0 0!important;
    padding:15px!important;
    box-sizing:border-box!important;
  }
  .sky-public-vibe .sky-public-playstyle{
    justify-content:flex-start!important;
  }
  .sky-public-vibe .sky-public-playstyle__item{
    flex:1 1 calc(50% - 4px)!important;
    min-width:0!important;
  }
}
@media(max-width:390px){
  .sky-public-profile-shell{
    width:calc(100% - 10px)!important;
    max-width:calc(100% - 10px)!important;
  }
  .sky-public-vibe .sky-public-playstyle__item{
    flex:1 1 100%!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .sky-loader-shooting-star{
    animation:none!important;
    opacity:.55!important;
    left:28%!important;
    top:28%!important;
  }
}


/* =========================================================
 * v0.14.2 public profile fixes
 * ========================================================= */

/* 光の翼カード下に追加していた装飾星を撤去 */
.sky-public-collection-wrap .sky-public-profile__collection > div:first-child::after{
  display:none!important;
  content:none!important;
}

/* ---------------------------------------------------------
 * PLAY STYLE
 * icon top-center -> label -> value, all centered.
 * No vertical-looking compressed text on mobile.
 * --------------------------------------------------------- */
@media(max-width:760px){
  .sky-public-vibe .sky-public-playstyle{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }

  .sky-public-vibe .sky-public-playstyle__item{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    min-width:0!important;
    min-height:96px!important;
    padding:13px 9px 12px!important;
    border-radius:16px!important;
    text-align:center!important;
    white-space:normal!important;
    writing-mode:horizontal-tb!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
  }

  .sky-public-vibe .sky-public-playstyle__item::after{
    content:"✦"!important;
    order:-3!important;
    display:block!important;
    margin:0 0 4px!important;
    color:#9dbdc2!important;
    font-size:.78rem!important;
    line-height:1!important;
  }

  .sky-public-vibe .sky-public-playstyle__item small{
    order:-2!important;
    display:block!important;
    margin:0!important;
    width:100%!important;
    color:#96a8ab!important;
    font-size:.56rem!important;
    line-height:1.25!important;
    letter-spacing:.10em!important;
    text-align:center!important;
    white-space:nowrap!important;
    writing-mode:horizontal-tb!important;
  }

  .sky-public-vibe .sky-public-playstyle__item strong{
    order:-1!important;
    display:block!important;
    margin:0!important;
    width:100%!important;
    color:#415c61!important;
    font-size:.82rem!important;
    line-height:1.45!important;
    text-align:center!important;
    white-space:normal!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    writing-mode:horizontal-tb!important;
  }
}

@media(max-width:390px){
  .sky-public-vibe .sky-public-playstyle{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .sky-public-vibe .sky-public-playstyle__item{
    min-height:92px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
  .sky-public-vibe .sky-public-playstyle__item strong{
    font-size:.78rem!important;
  }
}

/* ---------------------------------------------------------
 * LOADER METEOR
 * Make it visible even before / independently of JS state.
 * Loader itself is already rendered in HTML.
 * --------------------------------------------------------- */
.sky-public-profile-loader .sky-loader-shooting-star{
  display:block!important;
  position:absolute!important;
  z-index:5!important;
  top:18%!important;
  left:-55vw!important;
  width:52vw!important;
  max-width:460px!important;
  min-width:240px!important;
  height:2px!important;
  opacity:0!important;
  overflow:visible!important;
  border-radius:999px!important;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(115,184,198,.06) 20%,
    rgba(112,184,198,.26) 55%,
    rgba(255,255,255,.95) 91%,
    #fff 100%
  )!important;
  box-shadow:none!important;
  transform:rotate(-18deg)!important;
  animation:skyMeteorLoader0142 1.35s cubic-bezier(.16,.72,.25,1) .22s both!important;
}

.sky-public-profile-loader .sky-loader-shooting-star::before{
  content:""!important;
  position:absolute!important;
  right:-2px!important;
  top:50%!important;
  width:9px!important;
  height:9px!important;
  transform:translateY(-50%)!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:
    0 0 8px 3px rgba(255,255,255,.96),
    0 0 20px 7px rgba(116,191,204,.55)!important;
}

.sky-public-profile-loader .sky-loader-shooting-star::after{
  content:""!important;
  position:absolute!important;
  right:2px!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  transform:translate(50%,-50%) rotate(45deg)!important;
  background:
    linear-gradient(90deg,transparent 46%,rgba(255,255,255,.9) 48%,rgba(255,255,255,.9) 52%,transparent 54%),
    linear-gradient(0deg,transparent 46%,rgba(255,255,255,.9) 48%,rgba(255,255,255,.9) 52%,transparent 54%)!important;
  filter:drop-shadow(0 0 6px rgba(255,255,255,.9))!important;
}

@keyframes skyMeteorLoader0142{
  0%{
    opacity:0;
    transform:translate3d(-8vw,-3vh,0) rotate(-18deg) scaleX(.55);
  }
  10%{opacity:1}
  70%{opacity:1}
  100%{
    opacity:0;
    transform:translate3d(165vw,58vh,0) rotate(-18deg) scaleX(1.08);
  }
}

/* loader remains long enough to actually see the meteor */
.sky-public-profile-loader{
  animation:none!important;
}


/* =========================================================
 * v0.14.3 mobile public profile layout correction
 * ========================================================= */

/* PLAY STYLE は横方向のカード配置へ戻す */
@media(max-width:760px){
  .sky-public-vibe .sky-public-playstyle{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
  }

  .sky-public-vibe .sky-public-playstyle__item{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    min-height:54px!important;
    padding:10px 12px!important;
    text-align:center!important;
    writing-mode:horizontal-tb!important;
    word-break:keep-all!important;
  }

  .sky-public-vibe .sky-public-playstyle__item::after{
    order:0!important;
    margin:0!important;
    flex:0 0 auto!important;
  }

  .sky-public-vibe .sky-public-playstyle__item small{
    order:1!important;
    display:inline!important;
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    writing-mode:horizontal-tb!important;
  }

  .sky-public-vibe .sky-public-playstyle__item strong{
    order:2!important;
    display:inline!important;
    width:auto!important;
    margin:0!important;
    white-space:normal!important;
    word-break:keep-all!important;
    writing-mode:horizontal-tb!important;
  }
}

/* PROFILE：スマホではアバターを最上部中央へ */
@media(max-width:760px){
  .sky-public-profile-shell .sky-profile-summary--hero{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding:22px 18px!important;
  }

  .sky-public-profile-shell .sky-profile-summary__avatar{
    position:relative!important;
    inset:auto!important;
    order:1!important;
    align-self:center!important;
    margin:0 auto 14px!important;
    width:96px!important;
    height:96px!important;
    flex:0 0 96px!important;
  }

  .sky-public-profile-shell .sky-profile-summary__body{
    order:2!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    text-align:center!important;
  }

  .sky-public-profile-shell .sky-profile-summary__name-row{
    display:block!important;
    width:100%!important;
    text-align:center!important;
  }

  .sky-public-profile-shell .sky-profile-summary__name-row > div{
    width:100%!important;
    text-align:center!important;
  }

  .sky-public-profile-shell .sky-profile-summary__mini,
  .sky-public-profile-shell .sky-profile-summary__name-row h1,
  .sky-public-profile-shell .sky-profile-summary__sns{
    text-align:center!important;
  }

  .sky-public-profile-shell .sky-profile-birth{
    margin:12px auto 0!important;
    width:max-content!important;
    max-width:100%!important;
    justify-content:center!important;
    white-space:normal!important;
    text-align:center!important;
  }

  /* 好きな項目は3列ではなく、横書きの縦1列 */
  .sky-public-profile-shell .sky-profile-favorites{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
    margin:18px 0 0!important;
  }

  .sky-public-profile-shell .sky-profile-favorites > div{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    padding:11px 14px!important;
    box-sizing:border-box!important;
    text-align:center!important;
    writing-mode:horizontal-tb!important;
    word-break:keep-all!important;
  }

  .sky-public-profile-shell .sky-profile-favorites small{
    display:block!important;
    width:100%!important;
    margin:0 0 4px!important;
    text-align:center!important;
    white-space:normal!important;
    writing-mode:horizontal-tb!important;
    word-break:keep-all!important;
  }

  .sky-public-profile-shell .sky-profile-favorites strong{
    display:block!important;
    width:100%!important;
    margin:0!important;
    text-align:center!important;
    white-space:normal!important;
    writing-mode:horizontal-tb!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
  }

  .sky-public-profile-shell .sky-profile-summary__bio{
    width:100%!important;
    text-align:center!important;
  }

  .sky-public-profile-shell .sky-profile-badges{
    width:100%!important;
    justify-content:center!important;
  }

  .sky-public-profile-shell .sky-profile-pendant{
    top:14px!important;
    right:14px!important;
  }
}

@media(max-width:390px){
  .sky-public-vibe .sky-public-playstyle{
    grid-template-columns:1fr!important;
  }

  .sky-public-profile-shell .sky-profile-summary__avatar{
    width:88px!important;
    height:88px!important;
    flex-basis:88px!important;
  }
}


/* =========================================================
 * v0.14.4 mobile play style + reliable loader meteor
 * ========================================================= */

/* PLAY STYLE：横書き・縦1列 */
@media(max-width:760px){
  .sky-public-vibe .sky-public-playstyle{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
  }

  .sky-public-vibe .sky-public-playstyle__item{
    display:grid!important;
    grid-template-columns:20px auto minmax(0,1fr)!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:9px!important;
    min-height:54px!important;
    padding:10px 13px!important;
    border-radius:15px!important;
    text-align:left!important;
    writing-mode:horizontal-tb!important;
    word-break:keep-all!important;
  }

  .sky-public-vibe .sky-public-playstyle__item::after{
    content:"✦"!important;
    display:block!important;
    order:0!important;
    margin:0!important;
    color:#9dbdc2!important;
    font-size:.72rem!important;
    line-height:1!important;
    text-align:center!important;
  }

  .sky-public-vibe .sky-public-playstyle__item small{
    display:block!important;
    width:auto!important;
    margin:0!important;
    color:#96a8ab!important;
    font-size:.57rem!important;
    line-height:1.3!important;
    letter-spacing:.10em!important;
    text-align:left!important;
    white-space:nowrap!important;
    writing-mode:horizontal-tb!important;
  }

  .sky-public-vibe .sky-public-playstyle__item strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    color:#415c61!important;
    font-size:.82rem!important;
    line-height:1.4!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    writing-mode:horizontal-tb!important;
  }
}

/* ---------------------------------------------------------
 * Loader meteor:
 * use a dedicated fixed pseudo-layer in addition to the span.
 * This avoids older theme/CSS rules swallowing the span.
 * --------------------------------------------------------- */
.sky-public-profile-loader{
  isolation:isolate!important;
}

.sky-public-profile-loader::before{
  content:""!important;
  position:absolute!important;
  z-index:50!important;
  top:20%!important;
  left:-50vw!important;
  display:block!important;
  width:46vw!important;
  min-width:250px!important;
  max-width:480px!important;
  height:3px!important;
  border-radius:999px!important;
  pointer-events:none!important;
  opacity:0;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(112,187,201,.04) 16%,
    rgba(112,187,201,.20) 48%,
    rgba(174,220,229,.60) 72%,
    rgba(255,255,255,.98) 96%,
    #fff 100%
  )!important;
  filter:
    drop-shadow(0 0 5px rgba(255,255,255,.95))
    drop-shadow(0 0 13px rgba(115,190,203,.58))!important;
  transform:rotate(-18deg)!important;
  transform-origin:right center!important;
  animation:skyPublicLoaderMeteor0144 1.45s cubic-bezier(.16,.72,.24,1) .18s both!important;
}

.sky-public-profile-loader::after{
  content:"✦"!important;
  position:absolute!important;
  z-index:51!important;
  top:20%!important;
  left:-7vw!important;
  display:block!important;
  width:24px!important;
  height:24px!important;
  color:#fff!important;
  font-size:24px!important;
  line-height:24px!important;
  text-align:center!important;
  text-shadow:
    0 0 5px #fff,
    0 0 13px rgba(116,191,204,.95),
    0 0 27px rgba(116,191,204,.58)!important;
  pointer-events:none!important;
  opacity:0;
  transform:translate(-50%,-50%) rotate(-18deg)!important;
  animation:skyPublicLoaderMeteorHead0144 1.45s cubic-bezier(.16,.72,.24,1) .18s both!important;
}

@keyframes skyPublicLoaderMeteor0144{
  0%{
    opacity:0;
    transform:translate3d(-5vw,-4vh,0) rotate(-18deg) scaleX(.55);
  }
  8%{opacity:1}
  73%{opacity:1}
  100%{
    opacity:0;
    transform:translate3d(160vw,52vh,0) rotate(-18deg) scaleX(1.08);
  }
}

@keyframes skyPublicLoaderMeteorHead0144{
  0%{
    opacity:0;
    transform:translate3d(-5vw,-4vh,0) translate(-50%,-50%) rotate(-18deg) scale(.65);
  }
  8%{opacity:1}
  73%{opacity:1}
  100%{
    opacity:0;
    transform:translate3d(160vw,52vh,0) translate(-50%,-50%) rotate(-18deg) scale(1.05);
  }
}

/* Hide the old span meteor so only the reliable layer is visible. */
.sky-public-profile-loader .sky-loader-shooting-star{
  display:none!important;
}

/* Ensure no theme animation rule cancels the loader before the meteor crosses. */
.sky-public-profile-shell.is-loading .sky-public-profile-loader{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}


/* =========================================================
 * v0.14.5 LOADER METEOR
 * Real DOM element, explicitly started by JS.
 * Direction: upper-right -> lower-left.
 * ========================================================= */

/* Disable the pseudo-element meteor from v0.14.4 */
.sky-public-profile-loader::before,
.sky-public-profile-loader::after{
  content:none!important;
  display:none!important;
  animation:none!important;
}

/* Real meteor element */
.sky-public-profile-loader .sky-loader-shooting-star{
  display:block!important;
  position:absolute!important;
  z-index:80!important;

  top:16%!important;
  right:-38vw!important;
  left:auto!important;

  width:46vw!important;
  min-width:260px!important;
  max-width:520px!important;
  height:3px!important;

  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;

  opacity:0;
  pointer-events:none!important;
  overflow:visible!important;

  /* Bright head is on the LEFT edge because motion is right -> left */
  background:linear-gradient(
    90deg,
    #fff 0%,
    rgba(255,255,255,.98) 5%,
    rgba(135,199,211,.56) 28%,
    rgba(118,190,203,.20) 60%,
    rgba(118,190,203,.05) 82%,
    transparent 100%
  )!important;

  box-shadow:none!important;
  filter:
    drop-shadow(0 0 4px rgba(255,255,255,.96))
    drop-shadow(0 0 12px rgba(115,191,204,.58))!important;

  transform:rotate(18deg);
  transform-origin:left center!important;
  animation:none!important;
}

.sky-public-profile-loader .sky-loader-shooting-star::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:-4px!important;
  top:50%!important;
  width:10px!important;
  height:10px!important;
  transform:translateY(-50%)!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:
    0 0 7px 3px rgba(255,255,255,.98),
    0 0 18px 7px rgba(119,192,205,.68),
    0 0 30px 10px rgba(119,192,205,.28)!important;
}

.sky-public-profile-loader .sky-loader-shooting-star::after{
  content:"✦"!important;
  display:block!important;
  position:absolute!important;
  left:-11px!important;
  top:50%!important;
  width:24px!important;
  height:24px!important;
  transform:translate(-50%,-50%)!important;
  color:#fff!important;
  background:none!important;
  font-size:23px!important;
  line-height:24px!important;
  text-align:center!important;
  text-shadow:
    0 0 5px #fff,
    0 0 13px rgba(117,191,204,.95)!important;
}

/* JS adds this only after the loader is painted */
.sky-public-profile-shell.is-meteor-active
.sky-public-profile-loader .sky-loader-shooting-star{
  animation:skyLoaderMeteorRightToLeft0145 1.45s cubic-bezier(.18,.72,.24,1) both!important;
}

@keyframes skyLoaderMeteorRightToLeft0145{
  0%{
    opacity:0;
    transform:translate3d(0,-2vh,0) rotate(18deg) scaleX(.60);
  }
  8%{
    opacity:1;
  }
  72%{
    opacity:1;
  }
  100%{
    opacity:0;
    transform:translate3d(-165vw,58vh,0) rotate(18deg) scaleX(1.08);
  }
}

/* Keep loader visible while meteor finishes */
.sky-public-profile-shell.is-loading .sky-public-profile-loader{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

@media(prefers-reduced-motion:reduce){
  .sky-public-profile-shell.is-meteor-active
  .sky-public-profile-loader .sky-loader-shooting-star{
    animation:skyLoaderMeteorRightToLeft0145 1.45s cubic-bezier(.18,.72,.24,1) both!important;
  }
}


/* =========================================================
 * v0.14.6 METEOR VISIBILITY FIX
 * Do not use !important on properties controlled by keyframes.
 * ========================================================= */
.sky-public-profile-loader .sky-loader-shooting-star{
  opacity:0;
  transform:rotate(18deg);
}

.sky-public-profile-shell.is-meteor-active
.sky-public-profile-loader .sky-loader-shooting-star{
  animation-name:skyLoaderMeteorRightToLeft0145!important;
  animation-duration:1.45s!important;
  animation-timing-function:cubic-bezier(.18,.72,.24,1)!important;
  animation-fill-mode:both!important;
  animation-delay:0s!important;
}

/* Extra visibility for the meteor head */
.sky-public-profile-loader .sky-loader-shooting-star::before,
.sky-public-profile-loader .sky-loader-shooting-star::after{
  opacity:1!important;
}


/* =========================================================
 * v0.15.0 PUBLIC PROFILE
 * playful editorial CSS inspired by motion-design portfolios:
 * generous whitespace / typography / small geometric motion.
 * No image background.
 * ========================================================= */

.sky-public-profile-shell{
  --pp-ink:#47646a;
  --pp-muted:#91a5a8;
  --pp-line:rgba(71,100,106,.12);
  --pp-paper:#fbfcfb;
  --pp-mist:#eef5f5;
  --pp-accent:#9fc8cf;

  position:relative!important;
  width:min(100%,940px)!important;
  max-width:940px!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid var(--pp-line)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 90% 8%,rgba(213,234,237,.48),transparent 19%),
    radial-gradient(circle at 7% 35%,rgba(234,243,244,.72),transparent 22%),
    var(--pp-paper)!important;
  box-shadow:0 22px 60px rgba(68,94,99,.065)!important;
  color:var(--pp-ink)!important;
}

/* giant quiet letters in the background – typography as decoration */
.sky-public-profile-shell::before{
  content:"PROFILE"!important;
  position:absolute!important;
  top:8px!important;
  left:-7px!important;
  width:auto!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  color:transparent!important;
  -webkit-text-stroke:1px rgba(85,118,124,.065);
  font-size:clamp(4.8rem,11vw,8.8rem)!important;
  font-weight:800!important;
  line-height:.9!important;
  letter-spacing:-.055em!important;
  pointer-events:none!important;
  transform:none!important;
  box-shadow:none!important;
}
.sky-public-profile-shell::after{
  content:""!important;
  position:absolute!important;
  right:9%!important;
  top:74px!important;
  width:54px!important;
  height:54px!important;
  border:1px solid rgba(112,151,157,.16)!important;
  border-radius:50%!important;
  box-shadow:
    18px 23px 0 -25px rgba(112,151,157,.35),
    -36px 13px 0 -25px rgba(112,151,157,.25)!important;
  pointer-events:none!important;
  animation:skyPublicOrbitFloat 6.5s ease-in-out infinite!important;
}

.sky-public-profile{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:34px!important;
  box-sizing:border-box!important;
  gap:0!important;
  background:transparent!important;
}
.sky-public-profile::before,
.sky-public-profile::after{display:none!important}

/* HERO */
.sky-public-profile-shell .sky-profile-summary{
  position:relative!important;
  width:100%!important;
  min-height:0!important;
  margin:54px 0 0!important;
  padding:28px!important;
  overflow:visible!important;
  border:0!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.76)!important;
  box-shadow:
    0 10px 36px rgba(63,90,95,.045),
    inset 0 0 0 1px rgba(75,104,110,.075)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.sky-public-profile-shell .sky-profile-summary::before{
  content:""!important;
  position:absolute!important;
  left:28px!important;
  right:28px!important;
  bottom:-13px!important;
  height:1px!important;
  background:
    linear-gradient(90deg,
      transparent,
      rgba(93,128,134,.15) 14%,
      rgba(93,128,134,.15) 86%,
      transparent)!important;
  opacity:1!important;
}
.sky-public-profile-shell .sky-profile-summary::after{
  content:"✦"!important;
  display:block!important;
  position:absolute!important;
  right:24px!important;
  bottom:-21px!important;
  color:#aacbd0!important;
  background:var(--pp-paper)!important;
  padding:0 8px!important;
  font-size:.8rem!important;
  opacity:1!important;
  transform:none!important;
  box-shadow:none!important;
}

.sky-public-profile-shell .sky-profile-summary__avatar{
  box-shadow:
    0 0 0 6px #fff,
    0 12px 30px rgba(61,89,94,.12)!important;
  animation:skyPublicAvatarFloat 5s ease-in-out infinite!important;
}

.sky-public-profile-shell .sky-profile-summary__mini{
  color:#91a6aa!important;
  font-size:.60rem!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
}
.sky-public-profile-shell .sky-profile-summary__name-row h1{
  color:var(--pp-ink)!important;
  letter-spacing:-.02em!important;
}
.sky-public-profile-shell .sky-profile-summary__sns{
  color:#96a8ab!important;
}
.sky-public-profile-shell .sky-profile-birth{
  color:var(--pp-ink)!important;
  background:transparent!important;
  border:1px solid rgba(85,117,123,.13)!important;
  box-shadow:none!important;
}
.sky-public-profile-shell .sky-profile-favorites > div{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  padding:10px 0!important;
  border-bottom:1px solid rgba(80,111,117,.075)!important;
}
.sky-public-profile-shell .sky-profile-favorites small{
  color:#9badb0!important;
  letter-spacing:.05em!important;
}
.sky-public-profile-shell .sky-profile-favorites strong{
  color:var(--pp-ink)!important;
}
.sky-public-profile-shell .sky-profile-summary__bio{
  color:#60787d!important;
  border-top:0!important;
}

/* Shared section heading language */
.sky-public-vibe,
.sky-public-collection-wrap,
.sky-public-seasons{
  position:relative!important;
  width:100%!important;
  margin:42px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.sky-public-vibe__heading,
.sky-public-collection-wrap__heading,
.sky-public-seasons__head{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:11px!important;
  margin:0 0 15px!important;
  padding:0!important;
}
.sky-public-vibe__heading::before,
.sky-public-collection-wrap__heading::before,
.sky-public-seasons__head::before{
  content:""!important;
  width:34px!important;
  height:1px!important;
  margin:0!important;
  background:#a5c4c9!important;
}
.sky-public-vibe__heading span,
.sky-public-collection-wrap__heading span,
.sky-public-seasons__head span{
  color:#627e83!important;
  font-size:.65rem!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
  text-shadow:none!important;
}
.sky-public-vibe__heading strong,
.sky-public-collection-wrap__heading strong,
.sky-public-seasons__head strong{display:none!important}

/* PLAY STYLE — vertical list, horizontal text */
.sky-public-vibe .sky-public-playstyle{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  border-top:1px solid var(--pp-line)!important;
}
.sky-public-vibe .sky-public-playstyle__item{
  display:grid!important;
  grid-template-columns:28px 82px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  min-height:58px!important;
  margin:0!important;
  padding:11px 8px!important;
  border:0!important;
  border-bottom:1px solid var(--pp-line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:left!important;
  transition:padding-left .22s ease, background .22s ease!important;
}
.sky-public-vibe .sky-public-playstyle__item:hover{
  padding-left:14px!important;
  background:rgba(227,240,242,.30)!important;
}
.sky-public-vibe .sky-public-playstyle__item::after{
  content:"◇"!important;
  display:block!important;
  margin:0!important;
  color:#a5c5ca!important;
  font-size:.74rem!important;
  text-align:center!important;
  text-shadow:none!important;
}
.sky-public-vibe .sky-public-playstyle__item small{
  color:#9aabad!important;
  font-size:.57rem!important;
  font-weight:750!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
}
.sky-public-vibe .sky-public-playstyle__item strong{
  color:var(--pp-ink)!important;
  font-size:.86rem!important;
  font-weight:650!important;
  white-space:normal!important;
  word-break:keep-all!important;
}

/* COLLECTION — strong typography instead of boxes */
.sky-public-collection-wrap .sky-public-profile__collection{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  margin:0!important;
  padding:22px 0!important;
  border-top:1px solid var(--pp-line)!important;
  border-bottom:1px solid var(--pp-line)!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div{
  min-height:0!important;
  padding:7px 22px!important;
  border:0!important;
  border-right:1px solid var(--pp-line)!important;
  border-radius:0!important;
  background:transparent!important;
  text-align:left!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div:last-child{
  border-right:0!important;
}
.sky-public-collection-wrap .sky-public-profile__collection > div::before,
.sky-public-collection-wrap .sky-public-profile__collection > div::after{
  display:none!important;
  content:none!important;
}
.sky-public-collection-wrap .sky-public-profile__collection span{
  color:#9babad!important;
  font-size:.60rem!important;
  letter-spacing:.07em!important;
}
.sky-public-collection-wrap .sky-public-profile__collection strong{
  color:var(--pp-ink)!important;
  font-size:1.65rem!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
  text-shadow:none!important;
}

/* SEASON — icons float like little toys */
.sky-public-seasons__icons{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  padding:6px 0!important;
}
.sky-public-season-icon{
  width:52px!important;
  height:52px!important;
  border:1px solid rgba(88,122,128,.10)!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgba(64,91,96,.055)!important;
  transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease!important;
}
.sky-public-season-icon:nth-child(3n+1){transform:rotate(-2deg)}
.sky-public-season-icon:nth-child(3n+2){transform:translateY(3px) rotate(1.5deg)}
.sky-public-season-icon:nth-child(3n){transform:translateY(-2px) rotate(-.5deg)}
.sky-public-season-icon:hover{
  transform:translateY(-5px) rotate(0) scale(1.06)!important;
  box-shadow:0 14px 28px rgba(64,91,96,.10)!important;
}

/* tiny decorative moving dot */
.sky-public-collection-wrap::after{
  content:""!important;
  position:absolute!important;
  right:2px!important;
  top:7px!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:#b3d0d4!important;
  box-shadow:-13px 5px 0 -2px rgba(179,208,212,.52)!important;
  animation:skyPublicTinyBob 3.4s ease-in-out infinite!important;
}

/* Mobile: same design language, no cramped columns */
@media(max-width:760px){
  .sky-public-profile-shell{
    width:calc(100% - 14px)!important;
    max-width:calc(100% - 14px)!important;
    border-radius:22px!important;
  }
  .sky-public-profile{
    padding:16px!important;
  }
  .sky-public-profile-shell::before{
    top:15px!important;
    left:-3px!important;
    font-size:4.2rem!important;
  }
  .sky-public-profile{
    padding-top:28px!important;
  }
  .sky-public-profile-shell .sky-profile-summary{
    margin-top:48px!important;
    padding:22px 16px!important;
  }

  .sky-public-vibe,
  .sky-public-collection-wrap,
  .sky-public-seasons{
    margin-top:34px!important;
  }

  .sky-public-vibe .sky-public-playstyle__item{
    grid-template-columns:24px 70px minmax(0,1fr)!important;
    gap:8px!important;
    min-height:56px!important;
    padding:10px 4px!important;
  }
  .sky-public-vibe .sky-public-playstyle__item small{
    font-size:.54rem!important;
  }
  .sky-public-vibe .sky-public-playstyle__item strong{
    font-size:.82rem!important;
  }

  .sky-public-collection-wrap .sky-public-profile__collection{
    grid-template-columns:1fr!important;
    padding:0!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection > div{
    display:flex!important;
    align-items:baseline!important;
    justify-content:space-between!important;
    padding:14px 4px!important;
    border-right:0!important;
    border-bottom:1px solid var(--pp-line)!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection > div:last-child{
    border-bottom:0!important;
  }
  .sky-public-collection-wrap .sky-public-profile__collection strong{
    font-size:1.22rem!important;
  }

  .sky-public-season-icon{
    width:46px!important;
    height:46px!important;
  }
}

@media(max-width:390px){
  .sky-public-profile{
    padding:13px!important;
  }
  .sky-public-vibe .sky-public-playstyle__item{
    grid-template-columns:20px 62px minmax(0,1fr)!important;
  }
}

/* motion */
@keyframes skyPublicOrbitFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  50%{transform:translate3d(-7px,8px,0) rotate(6deg)}
}
@keyframes skyPublicAvatarFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}
@keyframes skyPublicTinyBob{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(4px)}
}

@media(prefers-reduced-motion:reduce){
  .sky-public-profile-shell::after,
  .sky-public-profile-shell .sky-profile-summary__avatar,
  .sky-public-collection-wrap::after{
    animation:none!important;
  }
}
