.py-dialog button{font:inherit;min-height:44px;padding:10px 16px;border:1px solid #a6a9ac;background:#fff;color:#171a1d;cursor:pointer;border-radius:2px}
.py-dialog{border:1px solid #c9cbcd;max-width:min(720px,calc(100vw - 32px));width:100%;max-height:85vh;padding:24px;background:#fff;color:#171a1d;z-index:100;font:16px/1.5 system-ui,sans-serif;box-sizing:border-box;outline:none}
.py-dialog::backdrop{background:#0009}.py-dialog h2{font-size:26px;margin:0 0 16px}.py-dialog p{color:#333}.py-dialog label{display:block;margin:12px 0}.py-dialog input:not([type=checkbox]),.py-dialog select{display:block;width:100%;box-sizing:border-box;min-height:48px;border:1px solid #888;padding:10px;background:#fff;color:#171a1d;font:inherit}.py-dialog input[type=checkbox]{width:20px;height:20px;vertical-align:middle;margin-right:8px}.py-dialog .py-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.py-dialog .py-close{float:right}.py-dialog .py-status{min-height:24px;color:#663e18}.py-dialog table{border-collapse:collapse;width:100%;font-size:14px}.py-dialog td,.py-dialog th{border-bottom:1px solid #ddd;text-align:left;padding:8px}.py-table{overflow:auto}.py-dialog .py-card{border-top:1px solid #ddd;padding:12px 0}.py-dialog a{color:#173d64;text-decoration:underline}.py-dialog button:focus-visible,.py-dialog input:focus-visible,.py-dialog select:focus-visible{outline:3px solid #265d91;outline-offset:2px}
.py-consent{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:min(680px,100dvh);margin:0;border:0;border-radius:0;padding:28px 24px calc(24px + env(safe-area-inset-bottom));background:var(--bg,#f7f7f5);color:var(--ink,#25282d);box-shadow:0 -18px 52px #0005;font-family:var(--sans,system-ui,sans-serif)}
.py-consent::before{content:"";display:block;width:36px;height:2px;margin:0 0 22px;background:var(--ink,#25282d);opacity:.22}
.py-consent h2{max-width:12ch;margin:0 0 14px;font:500 clamp(32px,8vw,42px)/1.04 var(--sans,system-ui,sans-serif);letter-spacing:-.035em;color:var(--ink,#25282d)}
.py-consent .py-consent-copy{max-width:38ch;margin:0;color:var(--ink-2,#58606a);font:400 16px/1.5 var(--sans,system-ui,sans-serif)}
.py-consent .py-consent-notice{display:inline-block;margin-top:16px;color:var(--ink,#25282d);font-size:13px;text-decoration-color:var(--ink-2,#58606a);text-decoration-thickness:1px;text-underline-offset:4px}
.py-consent .py-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:24px}
.py-consent .py-actions button{width:100%;min-height:52px;border-radius:0;font:600 14px/1 var(--sans,system-ui,sans-serif);letter-spacing:.02em}
.py-consent .py-actions .py-primary{border-color:var(--ink,#25282d);background:var(--ink,#25282d);color:var(--card,#fff)}
.py-consent .py-actions .py-secondary{border-color:var(--ink,#25282d);background:transparent;color:var(--ink,#25282d)}
.py-consent .py-actions .py-text{min-height:44px;border:0;background:transparent;color:var(--ink-2,#58606a);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.py-preferences .py-actions{position:sticky;bottom:calc(-24px - env(safe-area-inset-bottom));z-index:1;margin:20px -24px 0;padding:16px 24px calc(16px + env(safe-area-inset-bottom));background:var(--bg,#f7f7f5);box-shadow:0 -10px 18px oklch(0.17 0.006 250/.08)}
.py-preferences .py-actions .py-text{min-height:36px}
.py-consent .py-back{position:absolute;top:16px;right:16px;min-height:36px;padding:6px 0;border:0;background:transparent;color:var(--ink-2,#58606a);font-size:13px;text-decoration:underline;text-underline-offset:3px}
.py-preference-list{margin-top:24px;border-top:1px solid var(--rule,#deddd6)}
.py-preference{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:17px 0;border-bottom:1px solid var(--rule,#deddd6);cursor:pointer}
.py-preference-copy{display:grid;gap:4px;max-width:30ch}.py-preference-copy strong{font:600 16px/1.2 var(--sans,system-ui,sans-serif);color:var(--ink,#25282d)}.py-preference-copy span{font:400 13px/1.45 var(--sans,system-ui,sans-serif);color:var(--ink-2,#58606a)}
.py-preference input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;flex:0 0 auto;width:46px;height:28px;margin:0;border:1px solid var(--ink-2,#58606a);border-radius:999px;background:transparent;cursor:pointer;transition:background .18s,border-color .18s}
.py-preference input[type=checkbox]::after{content:"";position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:var(--ink-2,#58606a);transition:transform .18s,background .18s}
.py-preference input[type=checkbox]:checked{border-color:var(--ink,#25282d);background:var(--ink,#25282d)}.py-preference input[type=checkbox]:checked::after{transform:translateX(18px);background:var(--card,#fff)}
.py-consent .py-consent-footnote{margin:16px 0 0;color:var(--mu,#777e86);font-size:12px;line-height:1.45}
@media (min-width:600px){.py-consent{inset:50% auto auto 50%;width:min(520px,calc(100vw - 48px));transform:translate(-50%,-50%);max-height:calc(100dvh - 48px);overflow:auto;padding:32px}.py-consent::before{display:none}}
