.account-entry { display:inline-flex; }
dialog.import-layer,dialog.library-layer { width:100vw; height:100dvh; max-width:none; max-height:none; margin:0; border:0; background:transparent; }
dialog.library-layer { padding:0; }
dialog.import-layer::backdrop,dialog.library-layer::backdrop { background:transparent; }
dialog.import-layer:not([open]),dialog.library-layer:not([open]) { display:none; }
.account-entry .account-menu>nav { z-index:30; width:270px; max-width:calc(100vw - 32px); padding:12px 20px; }
.account-identity { display:flex; align-items:center; gap:14px; padding:8px 0 18px; border-bottom:1px solid #e1e6dc; }
.account-identity strong,.account-identity small { display:block; }
.account-identity strong { font-size:17px; }
.account-identity small { margin-top:5px; font-size:12px; color:#778279; }
.account-entry .account-menu>nav button { display:flex; align-items:center; gap:12px; min-height:50px; width:100%; padding:10px 0; border:0; background:transparent; color:#29473a; font-size:14px; }
.account-menu>nav button .icon:last-child:not(:first-child) { margin-left:auto; width:14px; }
.account-menu>nav button[data-account="logout"] { border-top:1px solid #e1e6dc; }
.account-login-entry { min-height:44px; padding:8px 16px; border:1px solid #cbd7cf; background:transparent; color:#006052; border-radius:7px; }
#account-panel { width:440px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:28px 30px; border:1px solid #dbe2da; border-radius:12px; background:#fffefa; box-shadow:0 14px 40px #173c3029; color:#29473a; }
#account-panel::backdrop { background:#253a3026; }
#account-panel h2 { margin:0 42px 10px 0; font:700 25px/1.3 "Songti SC","STSong",serif; }
.account-close { position:absolute; right:16px; top:16px; display:grid; place-items:center; width:44px; min-height:44px; padding:10px; border:0; background:transparent; color:#245342; }
.account-intro { margin:0 0 14px; font-size:14px; color:#64766a; }
.account-demo { margin:0 0 20px; font-size:11px; line-height:1.6; color:#7b877c; }
#account-panel form { margin:0; }
#account-panel .account-field { display:grid; grid-template-columns:90px minmax(0,1fr); align-items:center; gap:10px; margin:0 0 16px; font-size:13px; }
.account-input { display:flex; min-width:0; border:1px solid #ced8cf; border-radius:6px; }
#account-panel .account-input input { width:100%; min-width:0; min-height:44px; margin:0; padding:10px 12px; border:0; border-radius:6px; background:transparent; font-size:13px; }
.account-input button { flex:0 0 auto; min-height:44px; padding:8px; border:0; background:transparent; color:#607969; font-size:11px; }
.account-form-actions { display:flex; justify-content:flex-end; gap:12px; }
#account-panel .account-form-actions button { min-height:44px; padding:10px 20px; border:1px solid #cad5cb; border-radius:6px; background:transparent; color:#245342; font-size:13px; }
#account-panel button.account-primary { min-height:44px; padding:10px 20px; border:0; border-radius:6px; background:#006052; color:white; font-size:13px; }
.account-wide { width:100%; }
.account-error { margin:0 0 12px; color:#a44732; font-size:12px; }
.account-error:empty { display:none; }
.account-switch { display:block; width:100%; min-height:44px; margin-top:20px; padding:14px 0 0; border:0; border-top:1px solid #e1e6dc; border-radius:0; background:transparent; color:#006052; font-size:13px; }
.account-updates { margin:22px 0; padding-left:20px; font-size:14px; line-height:2; }
@media(max-width:600px) {
  #account-panel { padding:24px 20px; }
  #account-panel .account-field { grid-template-columns:1fr; gap:8px; }
}
/* 账号与反馈沿用当前皮肤；弹窗只覆盖，不改变读谱与播放器状态。 */
[data-account-avatar]{overflow:hidden}[data-account-avatar]>img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
#account-panel,#feedback-panel{background:var(--material-paper);color:var(--ink);border-color:var(--material-line);box-shadow:0 14px 40px #173c3029}
#feedback-panel{width:460px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:28px 30px;border:1px solid var(--material-line);border-radius:12px;overflow:auto}
#feedback-panel::backdrop{background:#253a3026}#feedback-panel h2{margin:0 45px 10px 0;font:700 25px/1.3 "Songti SC","STSong",serif}
.account-settings-tabs{display:flex;gap:4px;width:fit-content;padding:4px;border:1px solid var(--material-line);border-radius:11px;background:var(--v2-paper);margin:20px 0}
.account-settings-tabs button{border:0;border-radius:8px;min-height:36px;padding:8px 14px;background:transparent;color:var(--muted);font:inherit;font-size:13px}
.account-settings-tabs [aria-pressed=true]{background:var(--material-soft);color:var(--material-green);box-shadow:inset 0 1px #ffffff60}
.account-stack{display:grid;gap:8px;margin:16px 0 8px;font-size:13px}
:is(#account-panel,#feedback-panel) :is(.account-stack input,.account-stack textarea,.account-stack select){min-width:0;width:100%;padding:9px 10px;border:1px solid var(--material-line);border-radius:8px;background:var(--v2-paper);color:var(--ink);font:inherit}
#feedback-panel textarea{resize:vertical;min-height:100px;max-height:200px}.account-help{font-size:11px;line-height:1.7;color:var(--muted);margin:6px 0 14px}
.account-avatar-preview{display:flex;justify-content:center;margin:22px 0}.account-avatar-preview :is(canvas,.avatar){width:104px;height:104px;border-radius:50%;background:var(--material-soft);color:var(--material-green);font-size:30px;display:grid;place-items:center;overflow:hidden}.account-avatar-preview img{display:block;width:100%;height:100%;object-fit:cover}
.account-success{font-size:12px;color:var(--material-green)}.account-success:empty{display:none}
:is(#account-panel,#feedback-panel) .account-form-actions{margin-top:22px;gap:10px}
#feedback-panel .account-form-actions button{min-height:42px;padding:9px 18px;border:1px solid var(--material-line);border-radius:8px;background:var(--material-paper);color:var(--material-green);font:inherit;font-size:13px}
:is(#account-panel,#feedback-panel) .account-form-actions button.account-primary{background:var(--material-green);color:var(--material-paper);border-color:var(--material-green)}
:is(#account-panel,#feedback-panel) button:disabled{opacity:.5;cursor:default}
.feedback-context{margin:14px 0;font-size:11px;color:var(--muted);padding:10px 12px;border-radius:8px;background:var(--material-soft)}.feedback-context summary{cursor:pointer;font-size:12px;color:var(--material-green)}.feedback-context p{overflow-wrap:anywhere;margin:6px 0}
[data-screenshot-preview]{display:flex;align-items:center;gap:12px;margin:14px 0}[data-screenshot-preview] img{max-width:180px;max-height:100px;object-fit:contain;border:1px solid var(--material-line);border-radius:6px}[data-screenshot-preview] button{font:inherit;font-size:12px;border:0;padding:8px;background:transparent;color:var(--material-green)}
@media(max-width:600px){#feedback-panel{padding:24px 20px}.account-settings-tabs{margin-top:15px}.account-avatar-preview{margin:18px 0}}
:is(#account-panel,#feedback-panel) [hidden]{display:none!important}
:is(#account-panel,#feedback-panel) .account-close{color:var(--muted)}
:is(#account-panel,#feedback-panel) .account-stack :is(input,textarea,select):focus-visible{outline:none;border-color:var(--material-green);box-shadow:0 0 0 2px color-mix(in srgb,var(--material-green) 22%,transparent)}
#invite-panel{width:420px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:28px 30px;border:1px solid var(--material-line);border-radius:12px;background:var(--material-paper);color:var(--ink);box-shadow:0 14px 40px #173c3029;overflow:auto}
#invite-panel::backdrop{background:#253a3026}#invite-panel h2{margin:0 42px 12px 0;font:700 25px/1.3 "Songti SC","STSong",serif}#invite-panel h3{margin:22px 0 10px;font-size:14px}#invite-panel .account-close{color:var(--muted);font-size:24px}#invite-panel .account-primary{min-height:42px;padding:9px 18px;border:0;border-radius:8px;background:var(--material-green);color:var(--material-paper);font:inherit}#invite-panel button:disabled{opacity:.5}
.invite-code{display:grid;grid-template-columns:1fr auto;gap:6px 12px;margin:16px 0;padding:12px;border:1px solid var(--material-line);border-radius:10px;background:var(--v2-paper)}.invite-code[hidden]{display:none}.invite-code label,.invite-code small{grid-column:1/-1;color:var(--muted);font-size:12px}.invite-code input{min-width:0;border:0;background:transparent;color:var(--ink);font-size:22px;letter-spacing:.14em}.invite-code button,.invite-list button{border:0;background:transparent;color:var(--material-green);font:inherit}.invite-list{list-style:none;margin:0;padding:0}.invite-list li{display:flex;justify-content:space-between;align-items:center;min-height:40px;border-top:1px solid var(--material-line);font-size:13px;color:var(--muted)}
.invite-copy-actions{display:flex;gap:8px;align-items:center}.invite-code [data-invite-link]{grid-column:1/-1;width:100%;font-size:12px;letter-spacing:0}.invite-code [data-invite-link][hidden]{display:none}
