/* Header account overlays: DS2 only, no styles leak into the underlying page. */
@font-face{font-family:AccountPretendard;src:url('/assets/fonts/pretendard/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
#cflAccountPanel{--ds-font:AccountPretendard,Pretendard,sans-serif;position:fixed;inset:0;margin:0;padding:0;border:0;border-radius:0;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;overflow:hidden;transform:translateX(100%);transition:transform .24s cubic-bezier(.22,1,.36,1);color:var(--ds-ink);background:var(--ds-bg)}
#cflAccountPanel[open]{display:flex;flex-direction:column}
#cflAccountPanel.is-open{transform:translateX(0)}
#cflAccountPanel::backdrop{background:rgba(36,53,45,.3)}
#cflAccountPanel [hidden]{display:none!important}
#cflAccountPanel button{font:inherit;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:normal}
#cflAccountPanel .account-head{position:relative;flex:none;padding-top:env(safe-area-inset-top);background:var(--ds-surface);border-bottom:1px solid var(--ds-line)}
#cflAccountPanel .account-head-inner{display:flex;align-items:center;gap:8px;min-height:56px;max-width:1112px;padding:0 16px;margin:auto}
#cflAccountPanel .account-head h1{flex:1;font-size:1.125rem;line-height:1.4}
#cflAccountPanel .account-icon-button{display:grid;place-items:center;flex:0 0 44px;width:44px;min-height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:var(--ds-ink);font-size:1.5rem}
#cflAccountPanel .account-icon-button:hover{background:var(--ds-soft)}
#cflAccountPanel .account-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
#cflAccountPanel .account-content{max-width:1112px;margin:auto;padding:24px 16px calc(32px + env(safe-area-inset-bottom))}
#cflAccountPanel .account-balance{border:1px solid var(--ds-line);border-radius:12px;background:var(--ds-surface);margin-bottom:24px}
#cflAccountPanel .account-balance summary{display:flex;align-items:center;gap:12px;min-height:52px;padding:12px 16px;list-style:none;cursor:pointer;color:var(--ds-muted);font-size:.875rem}
#cflAccountPanel .account-balance summary::-webkit-details-marker{display:none}
#cflAccountPanel .account-balance summary::after{content:'⌄';color:var(--ds-primary)}
#cflAccountPanel .account-balance[open] summary::after{transform:rotate(180deg)}
#cflAccountPanel .account-balance summary strong{margin-left:auto;font-size:1rem;color:var(--ds-primary);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
#cflAccountPanel .account-breakdown{display:flex;flex-wrap:wrap;gap:8px 24px;padding:12px 16px;border-top:1px solid var(--ds-line);font-size:.875rem;color:var(--ds-muted);font-variant-numeric:tabular-nums}
#cflAccountPanel .account-breakdown b{font-weight:600;color:var(--ds-ink);margin-left:8px}
#cflAccountPanel .account-meta{font-size:.75rem;color:var(--ds-muted);margin-bottom:12px;line-height:1.5}
#cflAccountPanel .account-list{border:1px solid var(--ds-line);border-radius:20px;background:var(--ds-surface);overflow:hidden}
#cflAccountPanel .account-list:empty{display:none}
#cflAccountPanel .account-row{display:flex;align-items:flex-start;gap:12px;min-width:0;width:100%;padding:16px;border:0;border-radius:0;background:transparent;text-align:left;text-decoration:none;color:var(--ds-ink);line-height:1.6;font-size:1rem}
#cflAccountPanel .account-row+.account-row{border-top:1px solid var(--ds-line)}
#cflAccountPanel .account-row:hover{background:var(--ds-bg)}
#cflAccountPanel .account-row-main{flex:1;min-width:0;overflow-wrap:anywhere}
#cflAccountPanel .account-row-date{display:block;font-size:.75rem;color:var(--ds-muted);margin-top:4px}
#cflAccountPanel .account-row-amount{flex:none;white-space:nowrap;font-size:.875rem;font-weight:600;font-variant-numeric:tabular-nums;padding-top:2px;color:var(--ds-primary)}
#cflAccountPanel .account-row-amount[data-negative=true]{color:var(--ds-warning)}
#cflAccountPanel .account-noti-icon{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--ds-soft);color:var(--ds-primary);font-size:.875rem;font-weight:600}
#cflAccountPanel .account-row.unread{background:#f0f4e9}
#cflAccountPanel .account-unread{display:inline-block;font-size:.75rem;color:var(--ds-primary);margin-left:8px;font-weight:600}
#cflAccountPanel .account-status{padding:32px 16px;text-align:center;color:var(--ds-muted);font-size:.875rem}
#cflAccountPanel .account-status button,#cflAccountPanel .account-status a,#cflAccountPanel .account-more{display:block;margin:16px auto 0;min-height:44px;padding:8px 24px;border:1px solid var(--ds-control);border-radius:12px;color:var(--ds-primary);background:var(--ds-surface)}
#cflAccountPanel .account-more{width:100%}
#cflAccountPanel button:disabled{opacity:.6;cursor:wait}
#cflAccountPanel .account-detail{padding:24px;border:1px solid var(--ds-line);border-radius:20px;background:var(--ds-surface)}
#cflAccountPanel .account-detail-amount{font-size:2rem;font-weight:700;color:var(--ds-primary);margin:8px 0 24px;font-variant-numeric:tabular-nums}
#cflAccountPanel #accountDetailBody{white-space:pre-wrap;overflow-wrap:anywhere;font-size:1rem}
body.cfl-account-panel-open{overflow:hidden!important}
@media(prefers-reduced-motion:reduce){#cflAccountPanel{transition:none}}
