/* Wire's own frame around PhoenixMail's payment window (the window brings its own styles: /pm/*). */
/* Suppress the unstyled frame; .wire-body reveals the page when CSS arrives. */
html.wire-app{color-scheme:dark;background:var(--bg,#10151d)}
.wire-nim-progress{position:static;display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px;margin:0 0 18px;border:1px solid var(--accent);border-radius:12px;background:var(--panel);color:var(--text)}
.wire-nim-progress p{margin:0;line-height:1.5;font-weight:650;overflow-wrap:anywhere}
.wire-nim-progress>p{flex:1 1 240px}
.wire-nim-progress button{min-height:48px;padding:12px 22px;border-radius:10px;font-weight:700}
/* A sent NIM card has one completion screen, without a second form or floating notice. */
.wire-body .wire-nim-window:has(.wire-nim-complete){width:min(520px,calc(100vw - 24px));min-width:0;box-sizing:border-box}
.wire-nim-window:has(.wire-nim-complete)>.nimiq-payment-head,.wire-nim-window:has(.wire-nim-complete)>.wire-nim-assets{display:none!important}
.wire-nim-host.wire-nim-complete{display:grid;place-items:center;box-sizing:border-box;min-width:0;padding:24px}
.wire-nim-complete .wire-nim-progress{position:static;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:440px;box-sizing:border-box;margin:0;padding:24px;min-width:0}
.wire-nim-complete .wire-nim-progress p{flex:0 1 auto;max-width:100%}
.wire-nim-complete #nim-progress-close{width:100%;max-width:240px}
/* Completion replaces the entire content, including the prepared-card wrapper. */
.wire-nim-host.wire-nim-complete>:not(#nim-progress),.wire-nim-complete #nim-progress>:not(#nim-progress-message):not(#nim-progress-close){display:none!important}
#nim-wallet-failure{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:10px}
#nim-wallet-failure>p{flex:none;min-height:0;height:auto}
#nim-wallet-retry{order:-2}
#nim-wallet-wait{order:-1}
/* Recipient choices are Wire-owned; the mirrored payment window is untouched. */
.claim-panel #claim-choices{border:0;padding:0;margin:0 0 16px;min-width:0;display:grid;gap:10px}
.claim-panel #claim-choices legend{font-weight:700;margin-bottom:12px}
.claim-panel #claim-choices button,.claim-panel #claim-retry,.claim-panel #request-claim-code{border:1px solid var(--accent);border-radius:10px;background:transparent;color:inherit;min-height:48px;padding:12px;font:inherit;white-space:normal;width:100%;box-sizing:border-box}
.claim-panel #claim-choices:disabled button,.claim-panel #claim-choices button:disabled{opacity:.45;cursor:not-allowed}
.claim-panel #claim-payout-details{font-size:14px;overflow-wrap:anywhere;line-height:1.5}
.claim-panel #claim-choices[hidden]{display:none!important}
@media(max-width:420px){.wire-nim-host.wire-nim-complete{padding:16px}.wire-nim-complete .wire-nim-progress{padding:20px 16px}}
.wire-nim-hub-fallback{min-height:44px;padding:10px 14px;border-radius:10px}
/* PhoenixMail's stylesheet locks the page (html{overflow:hidden;height:100dvh}: its mail app scrolls inside itself). Wire's page is a normal page: it scrolls. */
html{height:auto!important;min-height:100%;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-gutter:auto!important}
.wire-body{margin:0;min-height:100vh;height:auto;display:block;overflow:auto;overflow-x:hidden}
.wire-shell{max-width:560px;margin:0 auto;padding:20px 16px 40px}
.wire-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}.wire-head img{flex:1;min-width:0;max-width:215px;height:auto;object-fit:contain;object-position:left center}
.wire-head select,.wire-head button{width:auto;min-height:40px}
.wire-card{padding:22px;border:1px solid var(--line,#454e6a);border-radius:18px;background:var(--panel,#1b2030)}
.wire-card h1{font-size:24px;margin:0 0 8px}.wire-sub{margin:0 0 18px;opacity:.85;line-height:1.5}
.wire-card label{display:block;margin:0 0 12px}.wire-card input{width:100%;box-sizing:border-box}
.wire-who{margin:0 0 14px}.wire-pay-button{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:10px 20px}
.wire-pay-button img{width:24px;height:24px;object-fit:contain}
#wire-status{min-height:20px;margin:14px 0 0;font-weight:600}
#wire-status:empty{display:none}
.wire-note{margin:18px 0 0;font-size:13px}.wire-foot{text-align:center;margin-top:22px;font-size:12px;opacity:.7}
/* NIM uses Wire’s existing protected flow in the same window; payment requests remain unavailable. */
.nimiq-payment-assets+.nimiq-payment-controls button:first-child{display:none}

/* Return controls stay inside the payment window. */
.wire-window-back:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wire-session-help,.wire-session-confirmed{font-size:13px;line-height:1.5;color:var(--muted)}
.wire-session-help{margin:-4px 0 14px}.wire-session-confirmed{display:inline-block;margin:4px 6px 4px 0}
.wire-who{overflow-wrap:anywhere}
.nimiq-payment-head .wire-window-back{width:auto;height:auto;min-height:40px;padding:8px 12px;font-size:13px;color:var(--text);border:1px solid var(--accent);border-radius:9px;background:var(--panel);white-space:normal}
.nimiq-payment-head{flex-wrap:wrap;gap:8px}
.nimiq-payment-head h3{flex:1;min-width:0}
@media(max-width:420px){.wire-head{flex-wrap:wrap}.wire-head img{flex-basis:100%;margin-right:50%}.wire-card{padding:18px}.wire-window-back{max-width:70%}}

/* Wire uses the light theme name understood by the PhoenixMail styles. */
html.wire-app[data-theme="dark"]{color-scheme:dark;--bg:#10141e;--panel:#141925;--panel2:#202637;--line:#41495d;--text:#f0f2f8;--muted:#a8b0bf;--accent:#ff8a1f;--accent-soft:var(--panel2)}
html.wire-app[data-theme="light-paper"]{color-scheme:light;--bg:#f3f4f6;--panel:#fff;--panel2:#f0f2f6;--line:#ccd2dd;--text:#202938;--muted:#455165;--accent:#bc4c11;--accent-soft:var(--panel2)}
/* Wire's original three palettes, mapped to the payment window's variable names. */
html.wire-app[data-theme="dark"][data-palette="phoenixfire"]{--bg:#121416;--panel:#1b1e22;--panel2:#272b30;--line:#454b53;--accent:#ffb16b}
html.wire-app[data-theme="dark"][data-palette="aurora"]{--bg:#11121e;--panel:#1b1b2d;--panel2:#25253e;--line:#353750;--accent:#b6a0ff}
html.wire-app[data-theme="dark"][data-palette="ocean"]{--bg:#10191f;--panel:#172630;--panel2:#203544;--line:#304959;--accent:#6dd8e6}
html.wire-app[data-theme="light-paper"][data-palette="phoenixfire"]{--bg:#f3d4bf;--panel:#fff9f3;--panel2:#f7e2d1;--line:#ac7455;--accent:#aa3d08}
html.wire-app[data-theme="light-paper"][data-palette="aurora"]{--bg:#dcd2f4;--panel:#faf7ff;--panel2:#e9dff8;--line:#8464a5;--accent:#6433b3}
html.wire-app[data-theme="light-paper"][data-palette="ocean"]{--bg:#cce7ef;--panel:#f4fcff;--panel2:#d9eef5;--line:#4e8192;--accent:#08677b}
.wire-head{flex-wrap:wrap}.wire-head select{min-width:0;max-width:100%}
html[data-palette-mode="live"] .wire-body,html[data-palette-mode="live"] .wire-card,html[data-palette-mode="live"] .nimiq-payment-window,html[data-palette-mode="live"] .wire-body button,html[data-palette-mode="live"] .wire-body input,html[data-palette-mode="live"] .wire-body select,html[data-palette-mode="live"] .wire-body textarea{transition:background-color 2s ease,border-color 2s ease,color 2s ease}
@media(prefers-reduced-motion:reduce){html[data-palette-mode="live"] .wire-body,html[data-palette-mode="live"] .wire-card,html[data-palette-mode="live"] .nimiq-payment-window,html[data-palette-mode="live"] .wire-body button,html[data-palette-mode="live"] .wire-body input,html[data-palette-mode="live"] .wire-body select,html[data-palette-mode="live"] .wire-body textarea{transition:none}}
body.wire-body{background:var(--bg);color:var(--text)}
.wire-body [hidden]{display:none!important}
.wire-body input:not([type="radio"]):not([type="checkbox"]),.wire-body select,.wire-body textarea{background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:11px;font:inherit;max-width:100%}
.wire-body .nimiq-payment-panel input:not([type="radio"]):not([type="checkbox"]),.wire-body .nimiq-payment-panel textarea{width:100%;box-sizing:border-box}
.wire-body button,.wire-body .nimiq-payment-window button,.wire-body .nimiq-payment-controls button[aria-pressed="true"]{background:var(--panel);background-image:none;border:1px solid var(--accent);color:var(--text);box-shadow:none}
.wire-body button:hover:not(:disabled),.wire-body .nimiq-payment-window button:hover:not(:disabled){background:var(--panel2);border-color:var(--accent);color:var(--text)}
.wire-body button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wire-body button:disabled{opacity:.5;cursor:not-allowed}
#wire-send-code[data-state="sent"]{border-color:#369d70;opacity:1}
.wire-code-delivery{margin:10px 0 14px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.wire-session-actions{display:flex;justify-content:flex-end;margin:0 0 16px}
.wire-body .wire-session-actions .wire-session-lock{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:10px;box-sizing:border-box;border:1px solid var(--accent);border-radius:9px;background:var(--panel);color:var(--accent)}
.wire-session-lock svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wire-body .wire-session-actions .wire-session-lock:hover:not(:disabled){color:var(--accent)}
.wire-body .nimiq-payment-tabs{display:none!important}
.wire-body .wire-coin-picker .nimiq-payment-body{display:block}
.wire-body .wire-coin-picker .nimiq-payment-preview,.wire-body .wire-coin-picker .nimiq-payment-panel>:not(.nimiq-payment-assets){display:none!important}
.wire-body .wire-coin-picker .nimiq-payment-assets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.wire-body .wire-coin-picker .nimiq-payment-assets button{min-height:64px;white-space:normal}
/* Keep Safari from zooming into small form controls; retain the user's pinch zoom. */
.wire-body input:not([type="radio"]):not([type="checkbox"]),.wire-body select,.wire-body textarea{font-size:16px}
.wire-body .nimiq-payment-head>button:last-child{flex:0 0 44px;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;box-sizing:border-box;padding:10px;border:1px solid var(--accent);border-radius:9px;background:var(--panel);color:var(--accent)}
.nimiq-payment-head>button:last-child svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wire-body .nimiq-payment-head>button:last-child:hover:not(:disabled){color:var(--accent)}
.wire-body .nimiq-payment-window{box-sizing:border-box;min-width:0;}
.wire-body .nimiq-payment-how{overflow-wrap:anywhere;}
.wire-body .nimiq-payment-window{width:min(860px,calc(100vw - 24px));max-width:calc(100vw - 24px)}
.wire-body .nimiq-payment-body,.wire-body .nimiq-payment-panel,.wire-body .nimiq-payment-preview,.wire-body .wire-nim-host{min-width:0;max-width:100%;box-sizing:border-box}
.wire-body .nimiq-payment-assets{display:flex;flex-wrap:wrap;min-width:0}
.wire-body .nimiq-payment-assets button{flex:1 1 110px;min-width:0;white-space:normal;overflow-wrap:anywhere}
@media(max-width:640px){
 .wire-body .nimiq-payment-body{display:block}
 .wire-body .nimiq-payment-head{display:grid;grid-template-columns:minmax(0,1fr) 44px}
 .wire-body .nimiq-payment-head h3{grid-row:2;grid-column:1/-1;margin:0;font-size:18px;overflow-wrap:anywhere}
 .wire-body .nimiq-payment-head .wire-window-back{max-width:100%;font-size:14px}
 .wire-body .nimiq-payment-head>button:last-child{grid-row:1;grid-column:2}
 .wire-body .wire-nim-host .workspace{grid-template-columns:minmax(0,1fr)}
}
.wire-body .nimiq-payment-controls button[aria-pressed="true"]{border-width:2px;font-weight:750;text-decoration:underline;text-underline-offset:4px}
.wire-body .nimiq-payment-panel .nimiq-otp-option:has(input:checked){background:var(--panel2);border-color:var(--accent);box-shadow:none}
.wire-body .nimiq-payment-panel,.wire-body .nimiq-payment-panel label,.wire-body .nimiq-payment-panel .nimiq-payment-how{color:var(--text)}
.wire-body .nimiq-payment-panel input:not([type="radio"]):not([type="checkbox"]){background:var(--panel2);color:var(--text);border-color:var(--line)}
.wire-nim-window>.wire-nim-assets{padding:12px 18px;margin:0;border-bottom:1px solid var(--line);flex-shrink:0}
.wire-nim-host{overflow:auto;min-height:0;padding:18px;overscroll-behavior:contain}
.wire-nim-host .workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.wire-nim-host .nimiq-payment-panel{padding:0}
.wire-nim-host h2{font-size:16px;margin:0 0 12px}
.wire-nim-host .preview-area{min-width:0;padding:16px;border-radius:12px;background:var(--panel2)}
.wire-nim-host .payment-card{background:var(--card-bg,#deefff);border-color:var(--card-border,#9fc9eb);margin:0 auto}
.wire-nim-brand{width:150px;max-width:70%;height:auto;object-fit:contain}
.wire-nim-host .payment-card p{color:#243047}
.wire-nim-host #coin img{width:80px;height:80px;object-fit:contain}
.wire-nim-host .sample{font-size:11px;color:#243047}
html[data-palette="phoenixfire"] .wire-body button{background:var(--wire-button-bg);background-image:none;}
html[data-palette="phoenixfire"] .wire-body button:hover:not(:disabled){background:var(--wire-button-hover);}
.wire-nim-host .history-row{border-top:1px solid var(--line);padding:12px 0;overflow-wrap:anywhere}
.wire-nim-host .history-row button{padding:8px 12px;border-radius:9px;margin:0 8px 8px 0}
.wire-nim-host .history-row a{color:var(--text);text-decoration:underline}
.wire-nim-host #my-payments{margin-top:20px}
.wire-nim-host #feedback{line-height:1.5;overflow-wrap:anywhere}
@media(max-width:640px){.wire-nim-host .workspace{grid-template-columns:1fr}.wire-nim-host .preview-area:has(#payment-card[hidden]){display:none}}

/* The sender preview shares Wire's invitation, code and claim card surface. */
.wire-body .nimiq-payment-card{background-image:linear-gradient(125deg,var(--card-bg,#ece3ff) 0%,#e2eeff 56%,#ffe8f4 100%);border-color:var(--card-accent,var(--card-border,#c7b1ee));border-radius:26px}
.wire-body .nimiq-payment-card::before{content:none;display:none}

/* Local stablecoin preview reuses the NIM card template, renderer and twelve palettes. */
.wire-has-local-preview .nimiq-payment-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.wire-body .wire-has-local-preview .nimiq-payment-preview{display:block}
.wire-local-card .nimiq-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.wire-local-card p,.wire-local-card .sample{color:#243047}
.wire-local-card .sample{font-size:11px}
.wire-local-card .card-heading{text-align:center;font-size:11px;letter-spacing:.08em}
.wire-local-card [data-card-part="coin"] img{width:80px;height:80px;object-fit:contain}
.wire-local-card [data-card-part="card-recipient"]{font-size:11px}
.wire-local-card .wire-lifetime-note{margin:14px 0 0;text-align:center;color:#243047}
@media(max-width:680px){.wire-has-local-preview .nimiq-payment-body{grid-template-columns:minmax(0,1fr)}.wire-body .wire-has-local-preview[data-view="form"] .nimiq-payment-preview{display:block}}

.wire-cards{margin-top:18px}.wire-cards h2{margin:0 0 14px;font-size:21px}
.wire-card-row{padding:16px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}
.wire-card-row p{margin:7px 0 0;line-height:1.5}.wire-card-recipient{color:var(--muted);font-size:14px}
.wire-card-state{font-weight:650}.wire-card-stale{font-size:13px;color:var(--muted)}
.wire-coin-icon{flex:none;width:24px;height:24px;object-fit:contain}
.wire-card-heading{display:flex;align-items:center;gap:10px;min-width:0}
.wire-card-heading strong{min-width:0;overflow-wrap:anywhere}
.wire-body .wire-coin-picker .nimiq-payment-assets button{display:flex;align-items:center;justify-content:center;gap:9px}
.nimiq-payment-head h3{display:flex;align-items:center;gap:9px}
.wire-card-dates{display:grid;gap:5px;margin:12px 0 0;font-size:12px;line-height:1.5;color:var(--muted)}
.wire-card-dates>div{display:flex;flex-wrap:wrap;gap:4px 8px}.wire-card-dates dt{font-weight:600}.wire-card-dates dd{margin:0;overflow-wrap:anywhere}
.wire-card-banner{display:flex;align-items:center;gap:12px;margin-top:18px;padding:16px;border:1px solid var(--accent);border-radius:14px;background:var(--panel);color:var(--text)}
.wire-card-banner p{flex:1;min-width:0;margin:0;line-height:1.5;font-weight:650;overflow-wrap:anywhere}
.wire-card-banner button{flex:none;min-width:44px;min-height:44px;border-radius:9px;font-size:22px}

/* The gas light: one quiet line with a small heart-beating dot, never a pill. */
.wire-gas{display:flex;align-items:center;gap:9px;margin:-8px 0 16px;font-size:12.5px;line-height:1.4;color:var(--muted,#9ba2b1)}
.wire-gas[hidden]{display:none}
.wire-led{flex:none;width:8px;height:8px;border-radius:50%;background:#3ccf8e;box-shadow:0 0 0 0 #3ccf8e66;animation:wire-heartbeat 2.4s ease-in-out infinite}
@keyframes wire-heartbeat{0%,56%,100%{transform:scale(1);box-shadow:0 0 0 0 #3ccf8e00}8%{transform:scale(1.35);box-shadow:0 0 0 5px #3ccf8e40}18%{transform:scale(1);box-shadow:0 0 0 0 #3ccf8e00}28%{transform:scale(1.25);box-shadow:0 0 0 4px #3ccf8e33}40%{transform:scale(1);box-shadow:0 0 0 0 #3ccf8e00}}
/* The Nimiq network light: green = healthy, yellow = slow, red = down. Only the healthy light beats. */
.wire-rpc{margin-top:-10px}
.wire-led[data-state="slow"]{background:#f2c230;box-shadow:0 0 0 3px #f2c23033;animation:none}
.wire-led[data-state="down"]{background:#ef5350;box-shadow:0 0 0 3px #ef535033;animation:none}
@media (prefers-reduced-motion:reduce){.wire-led{animation:none}}


.wire-nim-summary{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%;min-width:0;box-sizing:border-box;}
#nim-handoff-card{width:100%;max-width:520px;min-width:0;}
.wire-nim-summary .payment-card{width:100%;box-sizing:border-box;}
.wire-nim-summary #feedback{overflow-wrap:anywhere;}
.wire-nim-prepared .wire-nim-summary>button{max-width:100%;min-height:44px;white-space:normal;}
#wire-handoff-home{overflow-wrap:anywhere;}

#nim-wallet-failure{flex-basis:100%;width:100%;min-width:0;box-sizing:border-box;}
#nim-wallet-detail{font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;text-align:left;max-width:100%;min-width:0;margin:0;padding:10px;box-sizing:border-box;border:1px solid var(--line);border-radius:9px;}
#nim-wallet-detail-label,#nim-wallet-close-note,#nim-wallet-wait{font-size:14px;line-height:1.5;overflow-wrap:anywhere;}
#nim-wallet-failure button{width:100%;max-width:100%;white-space:normal;min-height:44px;margin:0;box-sizing:border-box;}
.wire-nim-progress:has(#nim-wallet-failure:not([hidden])){position:static;align-items:stretch;}

/* Phoenix keeps its orange outline; neutral button surfaces avoid a brown cast. */
html.wire-app[data-palette="phoenixfire"][data-theme="dark"]{--wire-button-bg:#1b1e22;--wire-button-hover:#272b30;}
html.wire-app[data-palette="phoenixfire"][data-theme="light-paper"]{--wire-button-bg:#ffffff;--wire-button-hover:#eef1f5;}
html[data-palette="phoenixfire"] .wire-body button{background:var(--wire-button-bg);background-image:none;}
html[data-palette="phoenixfire"] .wire-body button:hover:not(:disabled){background:var(--wire-button-hover);}
.wire-nim-host .history-row{min-width:0;padding:16px 0;overflow-wrap:anywhere;}
.nim-row-actions{display:flex;flex-wrap:wrap;gap:8px;}
.nim-row-actions button,.nim-row-actions a{min-height:44px;max-width:100%;white-space:normal;}
.nim-row-notice{font-size:14px;line-height:1.5;overflow-wrap:anywhere;}
.wire-nim-host>#new-card{margin:0 0 16px;min-height:44px;}


/* Compact unpaid-card controls; technical data expands only on request. */
#nim-progress-message { white-space: pre-line; }
#nim-wallet-details { min-width:0; margin:0; }
#nim-wallet-details:not([open]) > :not(summary) { display:none; }
#nim-wallet-details summary { cursor:pointer; color:var(--accent); }
#nim-wallet-details p { margin:0; flex:none; min-height:0; height:auto; }
#nim-wallet-details pre { max-width:100%; overflow-wrap:anywhere; white-space:pre-wrap; }
.nim-row-actions { display:flex; flex-wrap:wrap; gap:8px; }

.wire-lifetime-note,.wire-card-expiry{font-size:.85rem;line-height:1.5;white-space:normal;margin:.6rem 0;color:inherit}.wire-refund-form{display:flex;flex-wrap:wrap;gap:.7rem;align-items:end;margin-top:.8rem}.wire-refund-form label{flex:1;min-width:180px}.wire-refund-form input{display:block;width:100%;font-size:16px}.wire-refund-result{white-space:normal}

.wire-admin-panel{margin-top:1rem}.wire-admin-list ul{padding:0;list-style:none}.wire-admin-list li{display:flex;gap:1rem;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:.5rem 0;overflow-wrap:anywhere}.wire-admin-panel input[type=email]{display:block;font-size:16px;width:100%;max-width:32rem}.wire-admin-panel form{display:flex;align-items:end;gap:.7rem;flex-wrap:wrap}.wire-admin-panel label{line-height:1.6}.wire-admin-panel input[role=switch]{width:auto;margin-right:.7rem}.wire-access-link{font-size:.85rem;padding:.35rem .6rem}
.wire-admin-list ul{max-height:20rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.wire-admin-address{flex:1 1 180px;min-width:0;overflow-wrap:anywhere}
.wire-admin-row-actions{display:flex;flex-wrap:wrap;gap:8px}
.wire-admin-row-actions button{width:auto;min-height:40px;padding:8px 12px}
.wire-admin-panel form label{flex:1 1 240px;min-width:0}
.wire-admin-panel input[type=search]{display:block;width:100%;max-width:32rem;box-sizing:border-box;font-size:16px}
#wire-admin-counts{font-weight:650;line-height:1.6}
.wire-admin-help{font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}

/* PhoenixMail attribution has fixed brand colours, independent of Wire palettes. */
.wire-foot{opacity:1;font-size:14px}
footer .wire-powered{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px;padding:8px 14px;min-height:40px;border:1px solid #ff8a18;border-radius:999px;background:#171b22;color:#e9ebef;font-size:14px;font-weight:500;line-height:1.4;text-decoration:none}
footer .wire-powered strong{color:#f5f5f5;font-size:15px;font-weight:750}
footer .wire-powered strong span{color:#ff8a18}
footer .wire-powered:hover{background:#242a33;color:#fff;text-decoration:none}
footer .wire-powered:focus-visible{outline:2px solid #ff8a18;outline-offset:3px}

#wire-maintenance{margin:.8rem 0;padding:.8rem 1rem;border:1px solid currentColor;border-radius:12px;font-weight:650;line-height:1.5}
.wire-admin-relays summary{cursor:pointer;font-weight:650;margin:.9rem 0 .5rem}.wire-admin-relays-body{display:grid;gap:.6rem}.wire-admin-relays select{display:block;width:100%;max-width:32rem;font-size:16px}
.wire-admin-relay h4,.wire-admin-earned h4{margin:.6rem 0 .3rem}.wire-admin-relays p{margin:.25rem 0;overflow-wrap:anywhere;line-height:1.5}
/* Responsive balances keep labels next to their values without compressed prose. */
.wire-admin-relays{min-width:0;margin-top:20px;border:1px solid var(--line);border-radius:12px;background:var(--panel2)}
.wire-admin-relays>summary{box-sizing:border-box;min-height:48px;margin:0;padding:12px 14px;line-height:1.5;overflow-wrap:anywhere;color:var(--text)}
.wire-admin-relays>summary:focus-visible,.wire-admin-relays button:focus-visible,.wire-admin-relays select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wire-admin-relays-body{min-width:0;padding:0 14px 14px}
.wire-admin-relays:not([open])>.wire-admin-relays-body{display:none}
.wire-admin-relay,.wire-admin-earned{min-width:0;border-top:1px solid var(--line);padding-top:10px}
.wire-admin-relay h4{display:flex;flex-wrap:wrap;gap:6px;line-height:1.5;overflow-wrap:anywhere}
.wire-admin-relay h4 code{font-size:.85em;font-weight:500;overflow-wrap:anywhere}
.wire-relay-metrics{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:12px 0}
.wire-relay-metrics>div{min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.wire-relay-metrics dt{font-size:.85rem;line-height:1.5;overflow-wrap:anywhere;color:var(--muted)}
.wire-relay-metrics dd{margin:4px 0 0;font-size:1rem;font-weight:650;line-height:1.5;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:var(--text)}
.wire-admin-relays button{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere;font:inherit}
.wire-admin-relays .wire-admin-row-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.wire-admin-relays .wire-admin-row-actions button{width:100%;text-align:center}
.wire-admin-relays label,.wire-admin-relays select{box-sizing:border-box;min-width:0;max-width:100%;width:100%}
.wire-admin-relays select{min-height:44px;overflow:hidden;text-overflow:ellipsis}
.wire-admin-relay-result{padding:10px;border:1px solid var(--accent);border-radius:8px}
.wire-admin-relay-result a{color:var(--accent);overflow-wrap:anywhere}
.wire-admin-earned h5{font-size:1rem;margin:14px 0 8px;overflow-wrap:anywhere}
.wire-admin-maintenance-control,.wire-admin-switch{display:flex!important;align-items:center;gap:12px;min-height:48px;padding:10px 12px;margin-top:16px!important;border:1px solid var(--accent);border-radius:10px;background:var(--panel2);overflow-wrap:anywhere}
.wire-admin-maintenance-control input[role=switch],.wire-admin-switch input[role=switch]{flex:0 0 40px;width:40px!important;min-height:40px;accent-color:var(--accent);margin:0}
#wire-admin-maintenance-state,#wire-admin-access-state{line-height:1.6;overflow-wrap:anywhere}
.wire-admin-maintenance-control:focus-within,.wire-admin-switch:focus-within{outline:2px solid var(--accent);outline-offset:3px}
#wire-maintenance,#wire-invite-gate>p,#sender-invite-gate>p{margin:.8rem 0;padding:.8rem 1rem;border-radius:12px;font-weight:650;line-height:1.5}
#wire-maintenance,#wire-invite-gate>p,#sender-invite-gate>p{position:static;box-sizing:border-box;width:100%;color:var(--text);background:var(--panel2);border:2px solid var(--accent);border-left-width:6px;overflow-wrap:anywhere}
@media(min-width:600px){.wire-relay-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Keep the host exit instructions readable when scripted closing is refused. */
#wire-handoff-exit-help{font-size:1rem;line-height:1.6;margin:1rem 0;overflow-wrap:anywhere;}

/* Optional mobile entry: web sign-in remains available below. */
.wire-mobile-choices .wire-miniapp-link{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:44px;margin:0;padding:12px 14px;border:1px solid var(--accent);border-radius:10px;background:var(--panel);color:var(--text);font:inherit;line-height:1.5;text-align:center;text-decoration:none;overflow-wrap:anywhere;}
.wire-mobile-choices .wire-miniapp-link:hover{background:var(--panel2);}
.wire-mobile-choices .wire-miniapp-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}

.wire-mobile-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:12px;margin:1rem 0;}
@media(max-width:420px){.wire-mobile-choices{grid-template-columns:minmax(0,1fr);}}
