.dpa-launcher{display:flex;align-items:center;margin:0 0 16px;min-width:0}
.dpa-launcher[hidden]{display:none}
.dpa-launch-button{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;max-width:100%;min-height:44px;padding:10px 16px;border:1px solid #9ebcba;border-radius:12px;background:#f1f7f5;color:#155f61;font:inherit;font-size:14px;line-height:1.5;font-weight:700;text-align:left;cursor:pointer}
.dpa-launch-button>span:first-child{display:inline-flex;gap:8px;align-items:center}
.dpa-launch-button:hover{background:#e5f1ee}.dpa-launch-status{color:#425856;font-weight:500;overflow-wrap:anywhere}
.dpa-launch-button:focus-visible{outline:3px solid #29364a;outline-offset:3px}

.dpa,.dpa *{box-sizing:border-box}
.dpa{width:min(680px,calc(100% - 32px));max-width:none;max-height:min(760px,calc(100vh - 64px));max-height:min(760px,calc(100dvh - 64px));margin:auto;padding:0;border:1px solid #cbd9d6;border-radius:14px;background:#fbfaf7;color:#29364a;font:inherit;overflow:hidden;box-shadow:0 20px 60px rgba(25,45,45,.24)}
.dpa:not([open]){display:none}.dpa[open]{display:flex;flex-direction:column}
.dpa::backdrop{background:rgba(25,43,47,.48)}
.dpa-modal-head{display:flex;align-items:flex-start;gap:12px;flex:none;padding:16px 20px;border-bottom:1px solid #d7e2df;background:#f1f7f5}
.dpa-modal-head>div{flex:1;min-width:0}
.dpa-modal-head h2{margin:0;color:#29364a;font-family:'Big Caslon','Fraunces',Georgia,serif;font-size:28px;font-weight:500;line-height:1.16;text-wrap:balance}
.dpa-modal-head p{max-width:68ch;margin:8px 0 0;color:#425856;font-size:14px;line-height:1.5}
.dpa-close{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;min-width:44px;min-height:44px;padding:10px 12px;border:1px solid #9ebcba;border-radius:8px;background:#fff;color:#29364a;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.dpa-close:hover{background:#e5f1ee}
.dpa-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 20px}
.dpa-client-picker{display:grid;gap:8px;margin:0 0 16px;font-size:16px;font-weight:600}
.dpa-client-picker select{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #a7b9b5;border-radius:8px;background:#fff;color:#29364a;font:inherit;font-size:16px}
.dpa h3{margin:0 0 8px;font-size:18px;font-weight:700;line-height:1.35;color:#29364a}
.dpa-help{max-width:70ch;margin:0 0 12px;color:#425856;font-size:16px;line-height:1.5}
.dpa-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.dpa-button{min-height:44px;max-width:100%;border:1px solid #197578;border-radius:999px;background:#197578;color:#fff;padding:10px 16px;font:inherit;font-size:14px;line-height:1.45;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.dpa-button:hover{background:#155f61}.dpa-button:disabled{opacity:.6;cursor:not-allowed}
.dpa-button.secondary{background:#fff;color:#155f61;border-color:#9ebcba}.dpa-button.secondary:hover{background:#edf7f5}
.dpa button:focus-visible,.dpa input:focus-visible,.dpa textarea:focus-visible,.dpa select:focus-visible,.dpa summary:focus-visible{outline:3px solid #29364a;outline-offset:3px}
.dpa-brief h4{font-family:'Big Caslon','Fraunces',Georgia,serif;font-size:22px;font-weight:500;line-height:1.25;margin:0 0 12px;overflow-wrap:anywhere}
.dpa-brief>p:not(.dpa-warning){max-width:70ch;margin:12px 0;color:#425856;font-size:16px;line-height:1.5}
.dpa-facts{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.dpa-fact{border-radius:999px;background:#edf2f0;color:#334948;padding:4px 8px;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.dpa-warning{max-width:70ch;margin:12px 0;color:#764638;font-size:16px;line-height:1.5;overflow-wrap:anywhere}
/* W8 (N391) — the persona block, advisor-only. */
.dpa-persona{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#f3f7f5;border:1px solid #d9e4e2}
.dpa-persona-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dpa-persona-head b{font-family:'Big Caslon','Fraunces',Georgia,serif;font-size:19px;font-weight:500;color:#26323f}
.dpa-persona-sure{font-size:12.5px;font-weight:700;letter-spacing:.02em;border-radius:999px;padding:3px 9px;background:#e8f1f0;color:#297678}
.dpa-persona-sure.leaning{background:#f7eee0;color:#a0621c}
.dpa-persona-sure.balanced{background:#eceeee;color:#535b5f}
.dpa-persona-line{max-width:70ch;margin:8px 0 0;color:#425856;font-size:15px;line-height:1.5}
.dpa-drivers{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.dpa-driver{border-radius:999px;background:#fff;border:1px solid #d9e4e2;color:#334948;padding:3px 8px;font-size:13px;line-height:1.5}
.dpa-setup{margin-top:16px;border-top:1px solid #d7e2df}
.dpa-setup summary{min-height:44px;padding:10px 0;color:#29364a;font-size:16px;font-weight:700;line-height:1.5;cursor:pointer}
.dpa-local-setup{margin-top:16px;border-top:1px solid #d7e2df}
.dpa-section+.dpa-section{margin-top:16px;padding-top:16px;border-top:1px solid #d7e2df}
.dpa-contexts{display:grid;gap:12px;margin-top:12px}
.dpa-context{border-top:1px solid #d7e2df;padding-top:12px}.dpa-context:first-child{border-top:0;padding-top:0}
.dpa-context-head{display:flex;gap:12px;align-items:flex-start}.dpa-context-head>div{min-width:0;flex:1}
.dpa-context-head b{display:block;font-size:16px;line-height:1.4}.dpa-context-head small{display:block;margin-top:4px;color:#425856;font-size:16px;line-height:1.5}
.dpa-chip{flex:none;display:inline-flex;align-items:center;min-height:30px;border-radius:999px;padding:5px 10px;background:#e2f0ed;color:#246061;font-size:14px;font-weight:600;line-height:1.4}
.dpa-chip.draft{background:#fff4db;color:#765118}.dpa-chip.missing{background:#edf0ed;color:#495c59}
.dpa-review{margin-top:12px}
.dpa-review label{display:grid;gap:8px;margin-top:12px;font-size:16px;font-weight:600}.dpa-review label:first-child{margin-top:0}
.dpa-review input,.dpa-review textarea{box-sizing:border-box;width:100%;min-width:0;min-height:44px;border:1px solid #a7b9b5;border-radius:8px;background:#fff;color:#29364a;padding:10px 12px;font:inherit;font-size:16px;line-height:1.5}
.dpa-review textarea{min-height:96px;resize:vertical}.dpa-review input::placeholder,.dpa-review textarea::placeholder{color:#536662;opacity:1}
.dpa-options,.dpa-timing{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:12px}.dpa-options label,.dpa-timing label{margin:0}.dpa-timing>label:first-child{grid-column:1/-1}
.dpa-recipient{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:44px;padding:10px 0;border-top:1px solid #d7e2df}
.dpa-recipient:first-of-type{border-top:0}.dpa-recipient input{width:20px;height:20px;accent-color:#197578}
.dpa-recipient b{display:block;font-size:16px;line-height:1.4;overflow-wrap:anywhere}.dpa-recipient small{display:block;margin-top:4px;color:#425856;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
/* [hidden] restated where the display is set: an author `display` outranks the
   UA sheet's [hidden]{display:none}, so the mobile line shown only while Text
   is ticked stayed on screen when it was unticked. Same collision ui.css
   already records for the button trio; it is paid once per stylesheet that
   sets display on something that can be hidden. */
.dpa-recipient small[hidden]{display:none}
/* N394: the preview door under each recipient row */
.dpa-see{margin:-4px 0 8px 32px;font-size:14px;line-height:1.5}.dpa-see a{color:#197578;font-weight:600;min-height:44px;display:inline-flex;align-items:center}
.dpa-channels{display:flex;gap:8px 16px;flex-wrap:wrap;margin:8px 0}.dpa-channels label{min-height:44px;display:inline-flex;align-items:center;gap:8px;font-size:16px;line-height:1.5;font-weight:500}.dpa-channels input{width:20px;height:20px;accent-color:#197578;flex:none}
.dpa-notice{margin:16px 0 0;padding:12px 16px;border-radius:8px;background:#e9f4f1;color:#285657;font-size:16px;line-height:1.55;overflow-wrap:anywhere}.dpa-notice.error{background:#faeef1;color:#83334f}.dpa-notice:empty{display:none}
.dpa-empty,.dpa-loading{max-width:70ch;margin:0;color:#425856;font-size:16px;line-height:1.55}
@media(max-width:620px){.dpa{width:calc(100% - 20px);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);border-radius:14px}.dpa-modal-head{padding:16px;gap:12px}.dpa-modal-head h2{font-size:24px}.dpa-modal-head p{display:none}.dpa-body{padding:16px}.dpa-options,.dpa-timing{grid-template-columns:1fr}.dpa-recipient{grid-template-columns:24px minmax(0,1fr)}.dpa-recipient>.dpa-chip{grid-column:2;justify-self:start}.dpa-context-head{flex-wrap:wrap}.dpa-context-head>div{flex-basis:calc(100% - 96px)}}
