.app-dialog{z-index:1200;padding:max(1rem, env(safe-area-inset-top)) 1.25rem max(1rem, env(safe-area-inset-bottom));-webkit-tap-highlight-color:transparent;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.app-dialog--locked{justify-content:center;align-items:center;padding:0;display:flex}.app-dialog--confirm,.app-dialog#appConfirm{z-index:1200}.app-dialog[hidden]{display:none!important}.app-dialog__backdrop{z-index:0;pointer-events:auto;-webkit-backdrop-filter:blur(4px);background:#0f172a66;animation:.18s both appDialogBackdropIn;position:absolute;inset:0}.app-dialog__panel{z-index:1;pointer-events:auto;box-sizing:border-box;background:linear-gradient(165deg, color-mix(in srgb, var(--accent) 10%, var(--surface)) 0%, var(--surface) 42%);border:1px solid color-mix(in srgb, var(--accent) 22%, var(--line));width:min(100%,22.5rem);max-width:calc(100vw - 2.5rem);max-height:min(90dvh,40rem);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 8%, transparent), 0 28px 70px #00000061;isolation:isolate;border-radius:22px;flex-direction:column;padding:1.45rem 1.35rem 1.25rem;animation:.22s cubic-bezier(.2,.8,.2,1) both appDialogIn;display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.app-dialog__body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:auto;min-width:0;min-height:0;overflow:hidden auto}.app-dialog__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 .4rem;font-size:.72rem;font-weight:700}.app-dialog__panel h2{letter-spacing:-.01em;margin:0 0 .55rem;font-size:1.22rem;line-height:1.35}.app-dialog__msg{color:var(--muted);white-space:pre-line;overflow-wrap:break-word;word-break:break-word;margin:0 0 1.25rem;font-size:.95rem;line-height:1.6}.app-dialog__msg-line{color:var(--text,inherit);margin:0 0 .45rem}.app-dialog__msg-line:last-child{margin-bottom:0}.app-dialog__msg-line--muted{color:var(--muted);font-size:.9rem}.app-dialog__msg-line strong{color:var(--text,inherit);font-weight:700}.app-dialog__ledger{box-sizing:border-box;background:#f8fafce0;border:1px solid #e2e8f099;border-radius:12px;gap:.85rem;min-width:0;max-width:100%;margin:-.35rem 0 1.15rem;padding:.85rem .95rem;display:grid}.app-dialog__ledger[hidden]{display:none!important}.app-dialog__ledger-block{gap:.4rem;min-width:0;display:grid}.app-dialog__ledger-block--remain{border-top:1px solid #e2e8f099;padding-top:.7rem}.app-dialog__ledger-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.78rem;font-weight:700}.app-dialog__ledger-note{color:var(--muted);margin:0 0 .15rem;font-size:.84rem;line-height:1.45}.app-dialog__ledger-row{color:var(--muted);justify-content:space-between;align-items:center;gap:.75rem;min-width:0;font-size:.96rem;display:flex}.app-dialog__ledger-row>:first-child{min-width:0;overflow:hidden}.app-dialog__ledger-row strong{color:var(--text,inherit);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;flex-shrink:0;font-weight:700}.app-dialog__ledger-footnote{color:var(--muted);text-align:center;border-top:1px solid #e2e8f08c;margin:.1rem 0 0;padding-top:.55rem;font-size:.78rem;line-height:1.4}.app-dialog__ledger-cost{color:#b45309!important}.app-dialog__ledger-row--remain{color:var(--text,inherit);font-weight:600}.app-dialog__ledger-row--remain strong{color:var(--accent);font-size:1.08rem}.app-dialog--ledger .app-dialog__panel{width:min(100%,32rem);padding:1.55rem 1.5rem 1.35rem}.app-dialog--ledger .app-dialog__msg{font-size:1rem}.app-dialog--ledger .app-dialog__msg-line--muted{text-wrap:pretty;overflow-wrap:break-word;white-space:pre-line;-webkit-hyphens:manual;hyphens:manual;font-size:.94rem}@media (min-width:900px){.app-dialog--ledger .app-dialog__panel{width:min(100%,36rem)}}.app-dialog--wide .app-dialog__panel{width:min(100%,28rem)}.app-dialog__panel--form{width:min(100%,26rem);padding:1.5rem 1.4rem 1.3rem}.app-dialog__panel--form .app-dialog__msg{margin-bottom:1rem}.app-dialog__panel--form form{gap:0;display:grid}.app-dialog__panel--form .app-dialog__actions{grid-template-columns:1fr 1fr;margin-top:.35rem}.app-dialog__field{color:var(--ink);gap:.4rem;margin:0 0 .9rem;font-size:.875rem;font-weight:600;display:grid}.app-dialog__field span em{color:var(--muted);font-style:normal;font-weight:500}.app-dialog__field--row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1rem}.app-dialog__field-control{color:var(--text-secondary);white-space:nowrap;justify-content:flex-end;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;display:inline-flex}.app-dialog__field select,.app-dialog__field textarea,.app-dialog__field input[type=text],.app-dialog__field input[type=number],.app-dialog__field input[type=search],.app-dialog__field input[type=email]{box-sizing:border-box;width:100%;font:inherit;border:1px solid color-mix(in srgb, var(--ink) 14%, var(--line));background:var(--surface);color:var(--ink);caret-color:var(--ink);resize:vertical;border-radius:12px;padding:.65rem .8rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.app-dialog__field select:focus,.app-dialog__field textarea:focus,.app-dialog__field input[type=text]:focus,.app-dialog__field input[type=number]:focus,.app-dialog__field input[type=search]:focus,.app-dialog__field input[type=email]:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent);outline:none}.app-dialog__field input::placeholder,.app-dialog__field textarea::placeholder{color:#94a3b8}html[data-theme=dark] .app-dialog__field select,html[data-theme=dark] .app-dialog__field textarea,html[data-theme=dark] .app-dialog__field input[type=text],html[data-theme=dark] .app-dialog__field input[type=number],html[data-theme=dark] .app-dialog__field input[type=search],html[data-theme=dark] .app-dialog__field input[type=email]{background:var(--surface-elevated);border-color:var(--line);color:var(--ink)}.app-dialog__actions{flex:none;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);align-items:stretch;gap:.65rem;min-width:0;margin-top:.15rem;padding-top:.85rem;display:grid}.app-dialog__actions.is-single{grid-template-columns:minmax(0,1fr)}.app-dialog--wide .app-dialog__actions .btn-ghost{white-space:normal;line-height:1.3}.app-dialog__actions .btn-ghost,.app-dialog__actions .btn-primary,.app-dialog__actions .app-dialog__ok--danger{width:100%;max-width:100%;min-height:2.85rem;font:inherit;white-space:normal;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;box-sizing:border-box;border-radius:999px;justify-content:center;align-items:center;padding-inline:1rem;font-weight:700;line-height:1.25;display:inline-flex}.app-dialog__actions .btn-primary:disabled,.app-dialog__actions .btn-ghost:disabled{opacity:.72;cursor:wait}.app-dialog__actions .btn-primary{background:var(--accent);color:var(--on-accent);border:0}.app-dialog__actions .btn-ghost{color:var(--ink);border:1px solid var(--line);background:0 0}html[data-theme=dark] .app-dialog__actions .btn-primary{color:#042f2e;background:#14b8a6}.app-dialog__ok--boost{justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-weight:600;color:#fff!important;background:#0f766e!important;border-color:#0f766e!important;display:inline-flex!important}.app-dialog__ok--boost:hover,.app-dialog__ok--boost:focus-visible{color:#fff!important;background:#115e59!important;border-color:#115e59!important}.app-dialog__ok--danger{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--on-accent)!important}html[data-theme=dark] .app-dialog__ok--danger,body.is-reader[data-reader-theme=dark] .app-dialog__ok--danger{color:#042f2e!important;background:#14b8a6!important;border-color:#14b8a6!important}body.app-confirm-open{touch-action:none;overflow:hidden}.app-dialog__ok-pending{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.app-dialog__spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:999px;width:1rem;height:1rem;animation:.7s linear infinite appDialogSpin}@keyframes appDialogSpin{to{transform:rotate(360deg)}}@keyframes appDialogBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes appDialogIn{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}
