/* Public account wallet only. Inherits the Dunhuang palette and typography. */
.silk-wallet { min-width:0; color:#462914; }
.silk-account-layout { grid-template-columns: minmax(0,1fr); }
.silk-account-layout > .journey-panel,.silk-account-layout > .server-panel { display:none; }
.silk-account-layout > .account-panel { grid-column:1; width:100%; max-width:none; }
.silk-balance { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:18px 0; border-block:1px solid #ba916252; margin-bottom:20px; }
.silk-balance>span { width:100%; font-size:16px; }
.silk-balance strong { font-size:32px; font-weight:600; }
.silk-balance small { font-size:18px; }
.silk-balance .button { padding:8px 14px; }
.silk-tabs { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:25px; }
.silk-tabs .button { padding:12px 8px; font-size:15px; letter-spacing:.04em; }
.silk-section h2,.silk-history h2 { font-size:25px; margin:0 0 10px; font-weight:600; }
.silk-section p { font-size:17px; line-height:1.45; }
.silk-section label { display:block; margin:12px 0 7px; font-size:17px; }
.silk-section input[type=text],.silk-section input[type=email] { display:block; width:100%; box-sizing:border-box; min-height:48px; padding:10px 12px; border:1px solid #a47b4a; background:#fff8e6c9; color:#352010; font:16px Georgia,serif; border-radius:2px; }
.silk-section input:focus-visible { outline:2px solid #9e4b19; outline-offset:3px; }
.silk-section input[name=code] { font-family:ui-monospace,Consolas,monospace; letter-spacing:.08em; }
.silk-section .silk-help { font-size:15px; margin:8px 0 17px; color:#61492f; }
.registered-payment-email { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; margin:17px 0 0; padding:12px; border:1px solid #ba916252; background:#f8ebd280; font-size:16px; }
.registered-payment-email strong { font-weight:600; }
.silk-packages { border:0; padding:0; margin:18px 0; display:grid; grid-template-columns:1fr 1fr; gap:10px; min-width:0; }
.silk-packages legend { padding:0 0 8px; font-size:17px; }
.silk-section .silk-package { display:flex; align-items:center; gap:10px; padding:13px 10px; border:1px solid #b48b60; background:#f8ebd280; cursor:pointer; margin:0; transition:background .15s,border-color .15s; }
.silk-package:hover,.silk-package:has(input:checked) { background:#e8c99588; border-color:#99501c; }
.silk-package input { accent-color:#a34c1b; flex-shrink:0; }
.silk-package>span { display:grid; gap:4px; }
.silk-package strong { font-size:21px; }
.silk-package span span { font-size:16px; }
.silk-history { border-top:1px solid #ba916252; margin-top:26px; padding-top:20px; }
.silk-history-row { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #ba916230; font-size:16px; }
.silk-history-row>span { min-width:0; overflow-wrap:anywhere; }
.silk-history-row strong { white-space:nowrap; color:#4c592e; }
.silk-history-row time,.silk-history-row small { display:block; font-size:14px; margin-top:4px; color:#675039; }
.silk-history-row .button { font-size:13px; letter-spacing:0; padding:8px 10px; flex-shrink:0; }
.silk-history+.button { margin-top:25px; }
.paywant-dialog { box-sizing:border-box; width:min(900px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); overflow:auto; border:1px solid #ae7d47; border-radius:4px; padding:18px; background:#f5e5c9; color:#462914; box-shadow:0 12px 60px #24130466; }
.paywant-dialog::backdrop { background:#241a10b8; }
.paywant-dialog header,.paywant-dialog footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.paywant-dialog h2 { font-size:26px; margin:0; }
.paywant-dialog p { margin:12px 0; font-size:16px; }
.paywant-dialog .button { padding:9px 14px; font-size:14px; letter-spacing:.03em; }
.paywant-dialog iframe { display:block; width:100%; height:min(66dvh,700px); min-height:320px; border:0; background:#fff; margin-bottom:12px; }
.paywant-dialog footer a { color:#763b15; text-decoration:underline; }
body:has(.paywant-dialog[open]) { overflow:hidden; }
.payment-return { background:#f5e5c9; color:#462914; margin:0; padding:32px; font:18px/1.5 Georgia,serif; text-align:center; }
.payment-return a { color:#8a4016; }
.admin-welcome { text-align:center; padding:32px 10px 20px; }
.admin-welcome .identity-emblem { display:block; font-size:30px; color:#b1763f; margin-bottom:14px; }
.admin-welcome h2 { font-size:26px; margin:0 0 12px; }
.admin-welcome p { font-size:17px; line-height:1.5; margin:0 0 25px; }
@media(max-width:420px) { .silk-tabs { grid-template-columns:1fr; } .silk-packages { grid-template-columns:1fr; } .paywant-dialog { padding:12px; } .paywant-dialog h2 { font-size:22px; } .silk-balance strong { font-size:28px; } }
@media(prefers-reduced-motion:reduce) { .silk-package { transition:none; } }
