.eth-safe-ui { color: var(--text, #eee8f8); max-width: 1400px; margin: 0 auto; padding: 20px; }
.eth-safe-ui * { box-sizing: border-box; }
.eth-safe-ui h2, .eth-safe-ui h3, .eth-safe-ui h4 { margin: 0 0 14px; }
.eth-safe-ui p { line-height: 1.55; }
.eth-safe-heading { display: flex; align-items: start; justify-content: space-between; gap: 24px; margin-bottom: 16px; }
.eth-safe-heading p, .eth-safe-muted { color: var(--muted, #beb0d6); }
.eth-safe-ui label { display: grid; gap: 8px; font-size: 14px; color: var(--muted, #d0c1e6); }
.eth-safe-ui input, .eth-safe-ui select, .eth-safe-ui textarea { width: 100%; min-width: 0; padding: 12px; border: 1px solid #503064; border-radius: 10px; background: #120c1d; color: #f5f1fb; font: inherit; }
.eth-safe-ui textarea { resize: vertical; }
.eth-safe-ui input:focus-visible, .eth-safe-ui textarea:focus-visible, .eth-safe-ui select:focus-visible, .eth-safe-ui button:focus-visible { outline: 2px solid #b479fa; outline-offset: 3px; }
.eth-safe-ui button { cursor: pointer; min-height: 42px; }
.eth-safe-ui button:disabled { opacity: .5; cursor: default; }
.eth-safe-ui form { display: grid; gap: 16px; }
.eth-safe-ui form > button { justify-self: start; }
.eth-safe-ui code { font-size: 12px; overflow-wrap: anywhere; }
.eth-safe-ui a { color: #c79aff; overflow-wrap: anywhere; }
.eth-safe-card { background: #1e152e; border: 1px solid #4a2861; border-radius: 16px; padding: 22px; min-width: 0; }
.eth-safe-layout { display: grid; grid-template-columns: minmax(210px, .8fr) minmax(0, 2fr); gap: 20px; align-items: start; margin-top: 20px; }
.eth-safe-content { display: grid; gap: 20px; min-width: 0; }
.eth-safe-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 14px 0; }
.eth-safe-ui .dw-primary, .eth-safe-ui .dw-secondary { padding: 11px 18px; border-radius: 10px; border: 1px solid #75449b; color: #fff; font-weight: 600; }
.eth-safe-ui .dw-primary { background: #9e3aeb; }
.eth-safe-ui .dw-secondary { background: #281b3b; }
.eth-safe-banner, .eth-safe-error, .eth-safe-notice { border-radius: 10px; padding: 14px 16px; margin: 12px 0; }
.eth-safe-banner { border: 1px solid #b28335; background: #342719; color: #ffdda0; }
.eth-safe-error { border: 1px solid #e36482; background: #391520; color: #ffb7c7; }
.eth-safe-notice { border: 1px solid #63519d; background: #29213d; }
.eth-safe-account, .eth-safe-proposal { display: grid; gap: 8px; width: 100%; padding: 14px; margin: 8px 0; text-align: left; border: 1px solid #53366b; border-radius: 10px; background: #170f24; color: #eae2f7; overflow-wrap: anywhere; }
.eth-safe-account.is-selected, .eth-safe-proposal.is-selected { border-color: #b37af7; background: #362046; }
.eth-safe-account span, .eth-safe-proposal small { color: #c6b6df; font-size: 12px; }
.eth-safe-full-address { display: block; margin: 10px 0; line-height: 1.65; user-select: all; }
.eth-safe-sign-fields { display: grid; gap: 14px; grid-template-columns: minmax(0, 1fr) minmax(160px, .8fr); margin: 18px 0; }
.eth-safe-preview { margin-top: 22px; padding-top: 20px; border-top: 1px solid #513169; }
.eth-safe-eth-balance { font-size: 25px; font-weight: 700; }
.eth-safe-review-grid { display: grid; grid-template-columns: minmax(120px, .45fr) minmax(0, 1fr); gap: 12px 18px; line-height: 1.5; }
.eth-safe-review-grid dt { color: #c3b2da; }
.eth-safe-review-grid dd { margin: 0; overflow-wrap: anywhere; }
.eth-safe-ui details { margin: 16px 0; }
.eth-safe-ui summary { cursor: pointer; color: #cda9ff; }
.eth-safe-package-export { min-height: 170px; margin-top: 12px; font: 12px/1.5 monospace !important; }
.eth-safe-modal-backdrop { position: fixed; inset: 0; z-index: 12000; display: grid; place-items: center; padding: 20px; background: #08050bd9; overflow-y: auto; }
.eth-safe-modal { width: min(750px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; box-shadow: 0 20px 80px #000a; }
.eth-safe-modal pre { max-height: 220px; overflow: auto; padding: 12px; background: #100b18; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 11px; }
.eth-safe-ui .eth-safe-check { display: flex; align-items: start; gap: 10px; line-height: 1.5; margin: 20px 0; }
.eth-safe-check input { width: 20px; height: 20px; flex: 0 0 auto; margin-top: 1px; }
@media (max-width: 850px) { .eth-safe-layout { grid-template-columns: 1fr; } .eth-safe-heading { flex-direction: column; } .eth-safe-heading > label { width: 100%; } }
@media (max-width: 520px) { .eth-safe-ui { padding: 12px; } .eth-safe-card { padding: 16px; } .eth-safe-sign-fields { grid-template-columns: 1fr; } .eth-safe-review-grid { grid-template-columns: 1fr; gap: 5px; } .eth-safe-review-grid dd { margin-bottom: 12px; } .eth-safe-actions > button { flex: 1 1 auto; } .eth-safe-modal-backdrop { padding: 10px; } .eth-safe-modal { max-height: calc(100vh - 20px); } }
