.legal-consent-overlay,.legal-document-overlay{background:#000000d1;position:fixed;inset:0}.legal-consent-overlay{z-index:10000}.legal-document-overlay{z-index:12000}.legal-consent-dialog,.legal-document-dialog{width:min(800px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--text-main);overflow-wrap:anywhere;position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.legal-consent-dialog{z-index:10001;border-radius:16px;gap:16px;max-width:650px;overflow-y:auto}.legal-consent-header h2{margin:0;font-size:1.25rem}.legal-consent-icon{color:#17131f}.legal-consent-dialog .legal-consent-copy{font-size:1rem}.legal-document-dialog{z-index:12001;background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.legal-document-heading{align-items:center;gap:12px;min-width:0;display:flex}.legal-document-heading>svg{color:var(--primary);flex-shrink:0}.legal-document-heading h2{margin:0;font-size:1.25rem;line-height:1.35}.legal-document-heading p{color:var(--text-muted);margin:4px 0 0;font-size:.875rem}.legal-document-dialog .legal-modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 24px;display:flex}.legal-document-dialog .legal-modal-body{min-height:0;padding:24px;overflow-y:auto}.legal-document-dialog .legal-modal-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;padding:16px 24px;display:flex}.legal-document-dialog .legal-modal-footer button{min-height:44px}.legal-document-links{flex-wrap:wrap;gap:8px 16px;display:flex}.legal-document-links button,.legal-sources a{color:var(--primary);text-underline-offset:3px;text-decoration:underline}.legal-document-links button{text-align:start;min-height:44px;font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0}.legal-terms-choice{cursor:pointer;align-items:flex-start;gap:12px;font-size:1rem;line-height:1.5;display:flex}.legal-terms-choice input{width:20px;height:20px;accent-color:var(--primary);flex-shrink:0;margin-top:2px}.legal-choice-explanation{color:var(--text-muted);margin:0;font-size:.875rem;line-height:1.6}.legal-draft-notice{background:var(--bg-color);color:var(--text-main);border:1px solid var(--border);border-radius:12px;margin:0;padding:12px 16px;font-size:.875rem;line-height:1.6}.legal-save-error{color:#ffb5bd;margin:0;font-size:.875rem;line-height:1.5}.legal-consent-actions{align-items:stretch;gap:12px;display:flex}.legal-consent-actions button{white-space:normal;height:auto;min-height:44px;padding:12px 16px}.legal-consent-actions .legal-consent-accept{flex:1;width:auto}.legal-consent-actions button:disabled{opacity:.5;cursor:not-allowed}.legal-consent-dialog :focus-visible,.legal-document-dialog :focus-visible,.legal-page :focus-visible,.payment-legal-info :focus-visible{outline:2px solid var(--primary);outline-offset:4px}.legal-document{text-align:start;font-size:1rem;line-height:1.75}.legal-document section{margin-top:28px}.legal-document h3{margin:0 0 8px;font-size:1.075rem;line-height:1.5}.legal-document p{white-space:pre-line;margin:0}.legal-document dl{margin:0}.legal-document dl>div{margin-top:10px}.legal-document dt{color:var(--text-muted);font-size:.875rem}.legal-document dd{margin:0}.legal-document ul{padding-inline-start:20px}.legal-document li{margin-top:8px}.legal-page{max-width:800px;color:var(--text-main);overflow-wrap:anywhere;margin:0 auto;padding:24px 16px 64px}.legal-page h1{margin:20px 0 8px;font-size:1.5rem;line-height:1.4}.legal-page>p{color:var(--text-muted);margin-bottom:24px}.legal-page-back{min-height:44px;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:4px;display:flex}.payment-legal-info{text-align:start;gap:16px;margin:24px 0;display:grid}@media (width<=600px){.legal-consent-dialog,.legal-document-dialog{width:calc(100% - 24px)!important;max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important}.legal-consent-dialog{padding:20px}.legal-document-dialog{height:auto!important}.legal-consent-actions{flex-direction:column-reverse}.legal-document-dialog .legal-modal-header p{display:block!important}.legal-document-dialog .legal-modal-header h2{font-size:1.125rem!important}}
