/* Profile-only Stitch geometry. Shared homepage CSS stays untouched. */
.profile-page dialog{max-height:calc(100dvh - 40px);overflow:auto}.profile-primary{display:block;width:100%;padding:12px;margin-top:12px;border-radius:10px;background:#243a4b;color:white;text-align:center}.profile-primary:disabled{opacity:.5;cursor:not-allowed}.profile-note{font-size:12px;color:#607384;margin:12px 0}.profile-product{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #dbe4ed;border-radius:10px;margin:8px 0}.profile-product span{flex:1}.profile-product small{display:block;font-size:11px;color:#607384}.profile-product b{white-space:nowrap;color:#8b681d}.profile-page #nickname-input{width:100%;border:1px solid #c6d3dc;border-radius:8px;padding:10px;margin-top:8px}.profile-qr{max-width:220px;margin:12px auto}.profile-qr svg{width:100%;height:auto}.profile-page #account-name{overflow-wrap:anywhere}

.profile-page main>div{padding-top:12px}.profile-page #private{margin-top:0}.profile-page #guest{gap:20px}.profile-page #guest>div,.profile-page #guest>section{margin-top:0}.profile-page #account{margin-top:0}.profile-page h2{font-size:19px;line-height:26px}.profile-page #account-name{padding-right:24px}.profile-page #account>div:nth-child(2)>div{min-width:0}.profile-page #account .w-16{flex-shrink:0}.profile-account-id{font-size:11px;color:#7e8f9e;margin-top:3px}.profile-edit{position:absolute;top:34px;right:16px;width:36px;height:36px;border-radius:50%;background:#f7f8f9;display:grid;place-items:center;color:#4a5d6e}.profile-edit span{font-size:18px}.profile-page #vip-card{position:relative;isolation:isolate}.profile-page #vip-card:before{content:"";position:absolute;z-index:-1;right:0;top:0;width:112px;height:112px;border-bottom-left-radius:100%;background:linear-gradient(135deg,#dfc27a33,transparent)}.profile-page #vip-card h3{font-size:15px;line-height:22px;letter-spacing:.05em}.profile-page #membership-status{margin-top:8px;font-size:12px;line-height:17px}.profile-page #membership-expiry{font-size:10px;margin-top:3px}.profile-vip-footer{border-top:1px solid #b2c9df1a;margin-top:12px;padding-top:10px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#ffdea6;gap:8px}.profile-gold-action{background:linear-gradient(90deg,#a98132,#dfc27a);color:#271900;border-radius:999px;font-size:11px;font-weight:600;padding:7px 12px;white-space:nowrap}.profile-text-action{font-size:11px;color:#437a8c;margin-top:4px;min-height:28px}.profile-page #account>.grid>div:nth-child(2){border-left:1px solid #e4e9ed;border-right:1px solid #e4e9ed}.profile-page #gift-count{color:#a98132}.profile-page #credits-status:empty,.profile-page #account-status:empty,.profile-page #membership-expiry:empty{display:none}.profile-page [id^="retry-"]{padding:8px 12px;background:#ecf4ff;border-radius:8px;font-size:12px;margin-top:8px;color:#437a8c}.profile-section-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:0 4px}.profile-section-title h3{font-family:'Noto Serif',serif;font-size:19px;line-height:26px;font-weight:700;border-left:4px solid #a98132;padding-left:8px}.profile-section-title>span{font-size:11px;color:#a98132;white-space:nowrap}.profile-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-preview{position:relative;text-align:left;padding:16px;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,#fff,#ecf4ff);box-shadow:0 1px 3px #243a4b12;min-height:156px;display:flex;flex-direction:column}.profile-preview>.material-symbols-outlined{width:32px;height:32px;background:#7b58021a;border-radius:8px;color:#7b5802;font-size:20px;display:grid;place-items:center;margin-bottom:10px}.profile-preview h4{font-size:16px;font-weight:700;line-height:22px}.profile-preview p{font-size:12px;line-height:17px;color:#7e8f9e;margin-top:4px}.profile-preview footer{margin-top:auto;padding-top:24px;font-size:11px;color:#a98132;display:flex;justify-content:space-between;gap:4px}.profile-preview-tag{position:absolute;right:0;top:0;background:#fdcd73;color:#785500;font-size:11px;padding:2px 8px;border-bottom-left-radius:8px}.profile-record{padding:12px;background:#f7f8f9;border-radius:8px;margin-top:10px;display:flex;align-items:center;gap:12px}.profile-record-icon{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;background:#e0e9f4;color:#437a8c;border-radius:8px;font-size:22px}.profile-record[data-rel="love"] .profile-record-icon{background:#fdf2f2;color:#b33939}.profile-record-copy{flex:1;min-width:0}.profile-record strong{font-size:14px;line-height:20px;overflow-wrap:anywhere}.profile-record p{font-size:11px;color:#7e8f9e;margin-top:3px}.profile-record small{font-size:11px;color:#7e8f9e}.profile-record .profile-score{color:#437a8c}.profile-record-arrow{color:#7e8f9e}.profile-unlock{padding:12px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #e4e9ed}.profile-unlock:last-child{border:0}.profile-unlock strong{font-size:14px;overflow-wrap:anywhere}.profile-unlock p{font-size:11px;color:#7e8f9e;margin-top:4px}.profile-unlock-links{display:flex;flex-direction:column;gap:8px;flex-shrink:0;font-size:11px;color:#437a8c}.profile-page #show-unlocks{display:block;width:100%;text-align:right}.profile-page #customer-support>div{margin-top:8px}.profile-page dialog{border:0;border-radius:16px;padding:20px;width:calc(100% - 40px);max-width:420px;color:#18232c;box-shadow:0 16px 64px #0d243540}.profile-page dialog::backdrop{background:#0d243570}.profile-dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.profile-dialog-head h2{font-family:'Noto Serif',serif;font-weight:700}.profile-dialog-head button{width:36px;height:36px;background:#f7f8f9;border-radius:50%;font-size:24px}.profile-page #dialog-content{font-size:14px;line-height:1.8;overflow-wrap:anywhere}.profile-dialog-help{display:block;margin-top:16px;padding:12px;background:#ecf4ff;border-radius:8px;color:#437a8c;text-align:center}.profile-page #guest>div:first-child>div:nth-child(2)>div:last-child{min-width:0}.profile-page #guest h2{font-size:18px}.profile-page #guest h2+span{white-space:nowrap;font-size:10px}.profile-page #guest .gap-4{gap:12px}@media(max-width:375px){.profile-page #guest h2{font-size:16px}.profile-section-title h3{font-size:17px}.profile-page #guest .gap-4{gap:10px}.profile-page #guest h2+span{padding-left:4px;padding-right:4px}.profile-page #account-name{font-size:17px}}
