/* Porsi visual refinements. Existing surface and accent tokens stay authoritative. */
.strategy-strip{border-radius:22px;padding:20px 22px;gap:22px;background:linear-gradient(115deg,color-mix(in oklab,var(--accent) 7%,var(--surface)),var(--surface) 58%);box-shadow:0 12px 36px color-mix(in oklab,var(--page) 65%,transparent)}
.strategy-strip__copy{max-width:440px;gap:5px}.strategy-strip__copy strong{font-size:16px;letter-spacing:-.025em}.strategy-strip__copy span{line-height:1.5}
.strategy-select{width:min(440px,100%)}
.strategy-select__trigger{min-height:68px;grid-template-columns:36px minmax(0,1fr) 20px;gap:11px;padding:10px 14px;border-radius:17px;background:var(--surface-2);box-shadow:inset 0 1px 0 color-mix(in oklab,var(--ink) 5%,transparent)}
.strategy-select__trigger:hover,.strategy-select.is-open .strategy-select__trigger{border-color:color-mix(in oklab,var(--accent) 55%,var(--line));background:color-mix(in oklab,var(--accent) 5%,var(--surface-2))}
.strategy-select__trigger:focus-visible,.strategy-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.strategy-select__generic-icon{width:36px;height:36px;border-radius:11px;overflow:hidden}.strategy-select__generic-icon .strategy-icon{width:100%;height:100%;border:0;background:transparent}
.strategy-select__trigger-copy strong{font-size:13.5px}.strategy-select__trigger-copy small{font-size:10px}.strategy-select__trigger-copy small:empty{display:none}
.strategy-select__assets{display:block;margin-top:6px;overflow:hidden}
.strategy-select__assets .strategy-assets{margin:0}.strategy-select__assets .strategy-assets__item{padding:0;border:0;background:transparent}.strategy-select__assets .strategy-assets__item>span:last-child{font-size:10px}
.strategy-select__assets .asset-icon{width:17px;height:17px;border-radius:5px;box-shadow:none}
.strategy-select__menu{width:min(580px,calc(100vw - 32px));padding:7px;border-radius:19px;background:color-mix(in oklab,var(--surface) 96%,var(--surface-2));max-height:min(580px,70vh);overflow-y:auto;box-shadow:0 28px 70px color-mix(in oklab,var(--page) 72%,transparent)}
.strategy-option{grid-template-columns:36px minmax(0,1fr) 18px;align-items:start;gap:11px;padding:12px;border:1px solid transparent;border-radius:15px;transition:background .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}
.strategy-option+.strategy-option{margin-top:4px}.strategy-option:hover{transform:none;background:var(--surface-2);border-color:var(--line)}
.strategy-option[aria-selected="true"]{background:var(--accent-soft);border-color:color-mix(in oklab,var(--accent) 38%,var(--line))}
.strategy-icon{width:36px;height:36px;display:grid;place-items:center;flex:none;border:1px solid color-mix(in oklab,var(--strategy-color) 24%,var(--line));border-radius:11px;background:color-mix(in oklab,var(--strategy-color) 9%,var(--surface-2));color:var(--strategy-color)}
.strategy-icon__glyph{width:18px;height:18px;display:block;background:currentColor;mask-position:center;mask-size:contain;mask-repeat:no-repeat}
.strategy-icon__glyph--rocket{mask-image:url('../icons/lucide-rocket.svg')}.strategy-icon__glyph--shield-check{mask-image:url('../icons/lucide-shield-check.svg')}.strategy-icon__glyph--landmark{mask-image:url('../icons/lucide-landmark.svg')}
.strategy-icon__glyph--coins{mask-image:url('../icons/lucide-coins.svg')}.strategy-icon__glyph--piggy-bank{mask-image:url('../icons/lucide-piggy-bank.svg')}
.strategy-option__copy>strong{font-size:14px;letter-spacing:-.02em}.strategy-option__copy>small{font-size:11px;line-height:1.4;white-space:normal}
.strategy-option__metrics{margin-top:9px;gap:5px}.strategy-metric{border:1px solid var(--line);border-radius:8px;padding:4px 7px;gap:5px}.strategy-metric small{font-size:9px}.strategy-metric strong{font-size:10px}
.strategy-assets{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px}.strategy-assets__item{display:inline-flex;align-items:center;gap:4px;padding:3px 6px 3px 3px;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;color:var(--ink-2);font-size:10px;font-weight:700;line-height:1}
.strategy-assets__item .asset-icon{width:20px;height:20px;border-radius:6px;box-shadow:none}.strategy-assets__item .asset-icon__mono{font-size:7px}
.strategy-option__arrow{width:auto;margin-top:12px;color:var(--muted);font-size:17px;font-weight:700}.strategy-option[aria-selected="true"] .strategy-option__arrow{color:var(--accent)}
.strategy-modal__strategy-icon{width:40px;height:40px;border-radius:12px;overflow:hidden;padding:0}.strategy-modal__strategy-icon .strategy-icon{width:100%;height:100%;border:0;border-radius:0}.strategy-modal__strategy-icon .strategy-icon__glyph{width:21px;height:21px}

.panel--parts{min-width:0}.parts{gap:9px}.part{grid-template-columns:48px minmax(0,1fr) 84px minmax(88px,auto) 34px;gap:12px;padding:12px 13px;border:1px solid var(--line);border-radius:17px;background:color-mix(in oklab,var(--surface-2) 68%,var(--surface));transition:background .18s var(--ease),border-color .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease)}
.part:hover,.part.is-hot{background:var(--surface-2);border-color:var(--line-strong);box-shadow:0 8px 22px color-mix(in oklab,var(--page) 30%,transparent);transform:translateY(-1px)}
.part:focus-within{border-color:color-mix(in oklab,var(--accent) 65%,var(--line));box-shadow:0 0 0 3px var(--accent-soft)}
.part__logo{width:46px;height:46px;border-radius:15px;box-shadow:inset 0 0 0 1px var(--slice,transparent)}.part__logo .tile{width:38px;height:38px;border-radius:12px}
.part__name{font-weight:750;font-size:15px}.part__sub{margin-top:0;font-size:11px}.part__amount{font-size:13px;letter-spacing:-.02em}
.part__pct{padding:8px 10px;border-radius:12px;background:var(--surface);font-weight:700}.part__pct:focus-within{box-shadow:0 0 0 3px var(--accent-soft)}
.part__x{width:34px;height:34px;border-radius:10px;opacity:.6}.part:hover .part__x,.part:focus-within .part__x{opacity:1}
.parts__actions{gap:7px;margin-top:20px}.parts__actions .btn{white-space:nowrap;padding:9px 10px;font-size:12px}.btn--quiet{background:transparent;color:var(--muted)}.btn--quiet:hover{color:var(--ink)}.btn:disabled{opacity:.42;cursor:not-allowed;transform:none!important}

.settings-grid{gap:14px}.settings-card{border-radius:21px;padding:22px;box-shadow:0 12px 32px color-mix(in oklab,var(--page) 35%,transparent)}.settings-card__head{margin-bottom:18px}.settings-card__icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid color-mix(in oklab,var(--accent) 23%,var(--line));border-radius:13px;background:color-mix(in oklab,var(--accent) 9%,var(--surface-2));color:var(--accent);box-shadow:none}.settings-card__icon svg{width:21px;height:21px}.settings-card__icon--profile{background:color-mix(in oklab,var(--accent) 9%,var(--surface-2))}
.pref-select__trigger{min-height:62px;grid-template-columns:38px minmax(0,1fr) 18px;gap:11px;border-radius:14px}.pref-select__flag{width:38px;height:38px;border-radius:10px}.pref-select__flag img,.pref-select__flag img[src$="cn.svg"]{object-fit:contain;padding:3px;border-radius:8px}.pref-select__option .pref-select__flag{width:34px;height:34px;border-radius:9px}.pref-select__option{grid-template-columns:34px minmax(0,1fr) auto}.pref-select__option.is-selected{background:color-mix(in oklab,var(--accent) 9%,var(--surface-2))}
.profile-card__layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);gap:24px;align-items:stretch}
.profile-card__form{min-width:0}.profile-card__label{display:block;margin-bottom:8px;color:var(--ink-2);font-size:12px;font-weight:750}.profile-card__label--avatars{margin-top:18px}
.profile-card__input{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);outline:none;color:var(--ink);font-size:15px;font-weight:650}.profile-card__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.profile-card__input::placeholder{color:var(--muted);font-weight:450}
.avatar-grid{display:flex;flex-wrap:wrap;gap:8px}.avatar-choice{position:relative;width:74px;min-height:83px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:6px 5px;border:1px solid transparent;border-radius:15px;background:transparent;color:var(--muted);cursor:pointer;transition:transform .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease)}.avatar-choice__media{width:52px;height:52px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.avatar-choice__media img{width:100%;height:100%;display:block;object-fit:cover}.avatar-choice__media svg{width:22px;height:22px}.avatar-choice__label{max-width:100%;font-size:10px;font-weight:700;line-height:1.1;text-align:center;overflow-wrap:normal}.avatar-choice__check{position:absolute;top:2px;right:2px;width:17px;height:17px;display:none;place-items:center;border:2px solid var(--surface);border-radius:50%;background:var(--accent);color:var(--accent-ink)}.avatar-choice__check svg{width:12px;height:12px}.avatar-choice:hover{transform:translateY(-2px);background:var(--surface-2);color:var(--ink-2)}.avatar-choice[aria-pressed="true"]{border-color:color-mix(in oklab,var(--accent) 48%,var(--line));background:var(--accent-soft);color:var(--ink)}.avatar-choice[aria-pressed="true"] .avatar-choice__media{border-color:var(--accent)}.avatar-choice[aria-pressed="true"] .avatar-choice__check{display:grid}.avatar-choice:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.profile-upload{display:inline-flex;align-items:center;gap:8px;margin-top:13px;padding:9px 13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:700;cursor:pointer;transition:border-color .18s var(--ease),background .18s var(--ease)}.profile-upload:hover,.profile-upload.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.profile-upload:focus-within{outline:2px solid var(--accent);outline-offset:2px}.profile-upload svg{width:16px;height:16px}.profile-upload input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.profile-card__hint{margin:8px 0 0!important;color:var(--muted)!important;font-size:11px!important;font-weight:400}.profile-card__status{min-height:17px;margin:5px 0 0!important;color:var(--good)!important;font-size:11px!important}.profile-card__status.is-error{color:var(--crit)!important}
.profile-preview{display:flex;flex-direction:column;align-self:start;min-width:0;min-height:192px;padding:23px;border:1px solid var(--line);border-radius:18px;background:color-mix(in oklab,var(--accent) 5%,var(--surface-2))}.profile-preview__eyebrow{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.profile-preview__identity{display:flex;align-items:center;gap:12px;margin-top:17px;min-width:0}.profile-preview__avatar{width:60px;height:60px;display:grid;place-items:center;overflow:hidden;flex:none;border:1px solid color-mix(in oklab,var(--accent) 35%,var(--line));border-radius:16px;background:var(--accent-soft);color:var(--accent);font-size:23px;font-weight:800}.profile-preview__avatar img{width:100%;height:100%;object-fit:cover}.profile-preview__copy{min-width:0}.profile-preview__copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.profile-preview__copy small{display:block;color:var(--muted);font-size:11px}.profile-preview p{margin:19px 0 0!important;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:11px!important;line-height:1.5}

@media(max-width:900px){.strategy-strip{flex-direction:column;align-items:stretch}.strategy-select{width:100%}.strategy-strip__copy{max-width:none}}
@media(max-width:760px){.strategy-select__menu{width:100%;left:0;right:0}.profile-card__layout{grid-template-columns:1fr}.profile-preview{min-height:175px}}
@media(max-width:600px){.hero__field{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 8px}.hero__field .ccy{grid-column:1/-1;justify-self:start}.hero__field input{min-width:0;width:100%;font-size:clamp(31px,9vw,42px)}.part{grid-template-columns:44px minmax(0,1fr) 78px 32px;gap:7px 9px;padding:11px}.part__logo{width:42px;height:42px}.part__logo .tile{width:35px;height:35px}.part__amount{grid-column:2/4;text-align:left;color:var(--muted);font-size:12px}.part__x{grid-column:4;grid-row:1/3;align-self:center;opacity:1}.parts__actions .btn{flex:1 1 auto}.parts__actions .btn--main{flex-basis:100%}.avatar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.avatar-choice{width:100%;min-height:72px;padding:5px 2px}.avatar-choice__media{width:min(100%,44px);height:auto;aspect-ratio:1}.avatar-choice__label{font-size:9px}}
@media(max-width:360px){.strategy-option{grid-template-columns:32px minmax(0,1fr) 14px;padding:10px 8px;gap:9px}.strategy-option .strategy-icon{width:32px;height:32px}.strategy-assets{gap:4px}.strategy-assets__item{font-size:9px}.profile-card{padding:18px}}
@media(prefers-reduced-motion:reduce){.part,.strategy-option,.avatar-choice,.profile-upload{transition:none;animation:none}}
