/* Uplisted 1.2.1 payment components. Uses the existing application typography and controls. */
.payment-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;margin:24px 0}.payment-stack{display:grid;gap:20px;min-width:0}.payment-grid>.panel,.payment-grid>div{min-width:0}.payment-summary{border-top:4px solid #345b50}.payment-reference{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.payment-reference>span:first-child{font-size:11px;font-weight:700;letter-spacing:.07em}.payment-summary h2{font-size:26px;overflow-wrap:anywhere}.payment-description{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--muted,#536779)}.payment-breakdown{margin:26px 0}.payment-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border,#d3dde4);padding:14px 0;font-size:13px}.payment-breakdown dt{color:var(--muted,#536779)}.payment-breakdown dd{margin:0;text-align:right;font-weight:650;overflow-wrap:anywhere}.payment-note{font-size:12px;line-height:1.75;color:var(--muted,#536779)}.payment-terms{border-top:1px solid var(--border,#d3dde4);margin-top:22px;padding-top:15px;font-size:12px}.payment-terms summary{font-weight:650;cursor:pointer;padding:5px 0;min-height:32px}.payment-terms>div,.payment-terms>p{margin-top:15px;white-space:pre-wrap;overflow-wrap:anywhere}.payment-terms .form{margin-top:18px}.payment-id{display:block;overflow-wrap:anywhere;color:var(--muted,#536779);margin-top:22px;font-size:10px}.payment-provider{display:flex;align-items:center;gap:13px;padding:16px;border:1px solid #cbd9d0;border-radius:9px;background:#f5f9f6}.payment-provider>div{min-width:0}.payment-provider strong,.payment-provider small{display:block}.payment-provider small{margin-top:3px;font-size:11px;color:#476257}.payment-gateways,.payment-mode{border:0;margin:0;padding:0}.payment-gateways legend,.payment-mode legend{font-size:12px;font-weight:650;margin-bottom:10px}.payment-gateways label{display:flex;align-items:flex-start;gap:12px;padding:15px;margin:8px 0;border:1px solid var(--border,#d3dde4);border-radius:8px;cursor:pointer}.payment-gateways small{display:block;margin-top:3px}.payment-gateways input,.payment-mode input{accent-color:#345b50;min-width:18px;min-height:18px}.payment-security{padding-top:3px}.payment-security>strong{display:block;font-size:12px;margin-bottom:9px}.payment-security .turnstile-field{margin:0}.payment-submit{width:100%;min-height:49px}.payment-help{margin:20px 0 0;font-size:12px;line-height:1.7}.payment-help a{text-decoration:underline;text-underline-offset:3px}.payment-status-message{font-size:12px;margin-top:14px;color:var(--muted,#536779)}.payment-confirmed{text-align:center}.payment-confirmed-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 20px;border-radius:50%;color:#2f6551;background:#e6f1e9}.payment-confirmed h2{font-size:26px}.payment-confirmed>small{display:block;margin-top:12px;color:var(--muted,#536779)}.payment-total{display:block;font-size:29px;letter-spacing:-.7px;margin:12px 0 16px;line-height:1.2;overflow-wrap:anywhere}.payment-list{display:grid;gap:12px;margin:20px 0}.payment-list-row{display:flex;gap:16px;align-items:center;border:1px solid var(--border,#d3dde4);padding:20px;border-radius:10px;background:#fff;min-width:0;transition:border-color .15s,box-shadow .15s}.payment-list-row:hover{border-color:#94ad9f;box-shadow:0 3px 12px #203d3510}.payment-list-row>div{min-width:0}.payment-list-row strong{display:block;font-size:14px;overflow-wrap:anywhere}.payment-list-row small{display:block;color:var(--muted,#536779);font-size:11px;margin-top:6px;overflow-wrap:anywhere}.payment-list-icon{display:grid;place-items:center;flex-shrink:0;width:39px;height:44px;border:1px solid #d7e4dd;border-radius:8px;color:#345b50;background:#f2f8f4}.payment-list-total{margin-left:auto;text-align:right;flex-shrink:0;max-width:40%;display:grid;justify-items:end;gap:7px}.payment-list-total .badge{font-size:10px;white-space:normal}.payment-list-toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:20px 0}.payment-list-toolbar p{margin:0;font-size:12px}.payment-timeline article{padding:18px 0;border-top:1px solid var(--border,#d3dde4);min-width:0}.payment-timeline article:first-child{border:0;padding-top:0}.payment-timeline article>div:first-child{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.payment-timeline article>small{display:block;margin-top:6px;color:var(--muted,#536779)}.payment-timeline article>p{font-size:12px;margin-top:12px}.payment-timeline code{display:block;overflow-wrap:anywhere;font-size:10px;margin-top:10px}.payment-timeline .notice{margin-top:15px}.payment-subnav{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--border,#d3dde4);padding-bottom:17px;margin-bottom:26px;font-size:12px}.payment-subnav a:hover{text-decoration:underline}.payment-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}.payment-overview .panel{padding:22px;min-width:0}.payment-overview .panel h2{font-size:15px}.payment-overview .panel p{font-size:12px;margin-top:14px}.payment-overview .panel small{font-size:10px}.payment-filters{display:grid!important;grid-template-columns:minmax(150px,2fr) minmax(90px,1fr) minmax(100px,1fr) auto;gap:12px;align-items:end;margin:24px 0 12px}.payment-filters .button{align-self:end!important}.payment-filters .field{min-width:0}.payment-table-wrap{max-width:100%;overflow:auto}.payment-table{width:100%;border-collapse:collapse;font-size:12px}.payment-table th,.payment-table td{text-align:left;padding:12px 16px 12px 0;border-bottom:1px solid var(--border,#d3dde4);white-space:nowrap}.payment-table th{font-weight:650;color:var(--muted,#536779)}.payment-mode{display:flex;flex-wrap:wrap;gap:12px}.payment-mode label{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid var(--border,#d3dde4);border-radius:8px;flex:1;min-width:120px}.payment-key-status{font-size:12px;overflow-wrap:anywhere}.payment-endpoint{display:block;font-size:11px;overflow-wrap:anywhere;padding:12px;background:#f0f5f7;border:1px solid var(--border,#d3dde4);border-radius:7px;margin:15px 0}.payment-event-list{display:block;line-height:1.85;font-size:11px;overflow-wrap:anywhere;margin-bottom:20px}.payment-account-picker>small{display:block;margin:6px 0 12px}.payment-account-results{display:grid;border:1px solid var(--border,#d3dde4);border-radius:8px;max-height:240px;overflow:auto}.payment-account-results button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:#fff;border:0;border-bottom:1px solid var(--border,#d3dde4);padding:12px;text-align:left;min-width:0}.payment-account-results button:hover{background:#f0f6f2}.payment-account-results span,.payment-account-results strong{overflow-wrap:anywhere;max-width:100%}.payment-account-results span{font-size:11px;color:var(--muted,#536779)}.payment-selected{display:flex;align-items:center;gap:8px;padding:12px;background:#edf6ef;border-radius:8px;font-size:12px;min-width:0}.payment-selected span{overflow-wrap:anywhere}.payment-selected button{margin-left:auto;border:0;background:transparent;text-decoration:underline;font-size:11px;min-height:32px}.payment-stack>.panel{margin:0}.payment-receipt{max-width:760px;margin:42px auto;padding:35px;background:#fff;border:1px solid #d3dde4;border-radius:12px;font:15px/1.6 ui-sans-serif,system-ui,sans-serif;color:#142430}.payment-receipt h1{font-size:32px}.payment-receipt .receipt-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;border-bottom:1px solid #d3dde4;padding-bottom:20px;margin-bottom:24px}.payment-receipt .receipt-meta{font-size:12px;overflow-wrap:anywhere}.payment-receipt .receipt-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0}.payment-receipt .receipt-parties p{margin:4px 0;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.payment-receipt table{width:100%;border-collapse:collapse;margin:25px 0}.payment-receipt td,.payment-receipt th{padding:14px 0;text-align:left;border-bottom:1px solid #d3dde4}.payment-receipt td:last-child,.payment-receipt th:last-child{text-align:right}.payment-receipt .receipt-test{border:2px solid #917744;padding:12px;margin:16px 0;font-weight:700}.payment-receipt footer{margin-top:30px;font-size:12px;color:#536779}.payment-receipt .receipt-controls{display:flex;gap:12px;align-items:center;margin-top:25px}.payment-receipt .receipt-controls button,.payment-receipt .receipt-controls a{display:inline-block;padding:10px 15px;background:#142430;color:#fff;border:1px solid #142430;border-radius:7px;font:inherit;text-decoration:none;cursor:pointer}
@media(max-width:1050px){.payment-grid{grid-template-columns:minmax(0,1fr)}.payment-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-overview>.panel:last-child{grid-column:1/-1}}
@media(max-width:600px){.payment-grid{gap:18px;margin-top:18px}.payment-overview{grid-template-columns:minmax(0,1fr)}.payment-overview>.panel:last-child{grid-column:auto}.payment-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.payment-filters .field:first-of-type{grid-column:1/-1}.payment-list-row{padding:15px 12px;gap:11px;flex-wrap:wrap}.payment-list-icon{display:none}.payment-list-row>div:first-of-type{flex:1;min-width:110px}.payment-list-total{max-width:48%}.payment-list-row>svg:last-child{display:none}.payment-list-row strong{font-size:12px}.payment-list-row small{font-size:10px}.payment-reference{align-items:flex-start}.payment-summary h2{font-size:22px}.payment-total{font-size:25px}.payment-list-toolbar{align-items:flex-start}.payment-list-toolbar .button{font-size:10px}.payment-breakdown>div{gap:12px}.payment-breakdown dt,.payment-breakdown dd{font-size:12px}.payment-receipt{margin:15px;padding:20px}.payment-receipt .receipt-top{display:block}.payment-receipt .receipt-parties{grid-template-columns:minmax(0,1fr);gap:16px}.payment-receipt .receipt-controls{flex-wrap:wrap}.subnav{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.payment-list-row{transition:none}}
@media print{body{background:#fff!important}.payment-receipt{border:0;margin:0;padding:0;max-width:none;box-shadow:none}.payment-receipt .receipt-controls{display:none}.payment-receipt h1{font-size:26px}.payment-receipt .payment-terms>div{display:block}.payment-receipt table,.payment-receipt .receipt-parties{break-inside:avoid}.payment-receipt a{color:inherit!important;text-decoration:none}}

/* 1.2.1: concise payment settings and optional audit notes. */
.payment-settings-top { display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.6fr);gap:20px;align-items:start; }
.payment-settings-section { border-top:1px solid var(--border,#deded8);padding:16px 0; }
.payment-settings-section summary { cursor:pointer;font-weight:600;min-height:32px; }
.payment-settings-section[open] summary { margin-bottom:16px; }
.payment-settings-section .payment-endpoint { margin-bottom:12px; }
details.reauth { padding:12px 0;border-top:1px solid var(--border,#deded8); }
details.reauth>summary { cursor:pointer;font-size:.875rem;min-height:28px; }
details.reauth[open]>.field { margin:12px 0; }
@media(max-width:480px){.payment-settings-top {grid-template-columns:minmax(0,1fr);gap:8px;}}

/* 1.3.0 access, multi-provider checkout and installation controls */
.access-shell{max-width:500px;margin:20px auto 50px}.access-mark{display:grid;place-items:center;width:60px;height:60px;border:1px solid #d7e1d5;background:#edf3e9;border-radius:18px;margin-bottom:22px;color:#315c3e}.access-shell .page-heading{margin-bottom:24px}.access-shell .page-heading h1{font-size:clamp(28px,5vw,40px)}.access-code{font-size:26px!important;letter-spacing:8px;font-variant-numeric:tabular-nums}.access-legal{font-size:12px;line-height:1.6;margin-top:22px}.access-help{text-align:center;font-size:13px;margin-top:24px}.access-email{overflow-wrap:anywhere}.access-shell .form{margin-bottom:14px}.access-shell .payment-terms{margin:18px 0}.gateway-settings-grid{align-items:start;margin-top:24px}.gateway-connection{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 12px}.embedded-panel{max-width:1100px;margin:auto}#stripe-embedded-checkout{min-height:160px}.pwa-tools{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:150;display:flex;align-items:center;gap:12px;padding:10px 14px;max-width:calc(100vw - 24px);background:#162b21;color:#fff;border:1px solid #5a725e;border-radius:12px;box-shadow:0 4px 20px #0002;font-size:12px}.pwa-tools[hidden]{display:none}.pwa-tools button{border:1px solid #718877;border-radius:7px;padding:7px 10px;background:#eff5ec;color:#183425;white-space:nowrap;font:inherit;cursor:pointer}.pwa-tools span:empty{display:none}.gateway-settings-grid .payment-endpoint{overflow-wrap:anywhere;white-space:normal}@media(max-width:600px){.access-shell{margin-top:8px}.gateway-settings-grid{display:block}.gateway-settings-grid>.panel{margin-bottom:20px}.pwa-tools{bottom:calc(8px + env(safe-area-inset-bottom));font-size:11px}.access-code{letter-spacing:5px}}
