/* base rules moved here from the removed Ducklock stylesheet */
.unlock-dialog{inset:0;margin:auto;width:min(430px,calc(100% - 36px));height:auto;max-height:calc(100dvh - 60px);border:1px solid #555;box-shadow:0 0 100px #000c;padding:28px;background:#111;overflow:auto}
.unlock-dialog[open]{display:block}
.unlock-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}
.unlock-top>svg{width:26px;height:26px;color:#aaa}
.unlock-dialog h2{font:800 65px/.92 var(--display);margin:15px 0 20px;letter-spacing:-1px}
.unlock-dialog>p{color:#aaa;font-size:15px}
.unlock-dialog form{margin-top:24px}
.unlock-dialog label{display:block;font-size:14px;margin-bottom:10px}
.unlock-dialog input{display:block;width:100%;padding:15px 14px;background:#050505;color:white;border:1px solid #666;border-radius:2px;font:16px var(--body)}
.unlock-dialog input:focus-visible{outline:2px solid white;outline-offset:2px}
.unlock-dialog .primary{width:100%;margin-top:6px}
.unlock-dialog .primary:disabled{opacity:.6;cursor:wait}
#unlock-error{min-height:24px;font-size:13px;color:#ccc;line-height:1.5;margin:12px 0}
.unlock-dialog::backdrop{background:#000c;backdrop-filter:blur(10px)}
.unlock-dialog{width:min(620px,calc(100% - 28px));max-width:620px;max-height:calc(100dvh - 28px);padding:28px 32px;border:1px solid #555;background:linear-gradient(140deg,#161616,#090909 75%);border-radius:3px;overflow-y:auto;overscroll-behavior:contain}.unlock-dialog.gate-agreement{width:min(820px,calc(100% - 28px));max-width:820px}.gate-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.gate-mark{font:700 13px var(--mono);letter-spacing:1.4px}.gate-progress{display:flex;justify-content:space-between;gap:12px;margin:28px 0 10px;font:12px var(--mono);color:#aaa}.gate-progress-track{height:2px;background:#383838;margin-bottom:30px}.gate-progress-track span{height:100%;background:#fff;display:block;width:14.28%;transition:width .25s}.unlock-dialog .gate-heading h2{font:800 clamp(2rem,5vw,3.3rem)/1.03 var(--display);letter-spacing:-.4px;margin:0 0 14px;text-transform:uppercase;outline:none}.gate-heading>p{font-size:16px;line-height:1.65;color:#bbb;margin:0 0 25px}.unlock-dialog form{margin:0}.unlock-dialog label{font-size:14px;line-height:1.5}.unlock-dialog input{border-color:#555;border-radius:3px;font-size:16px}.unlock-dialog input[aria-invalid=true]{border:2px solid #fff}.unlock-dialog .primary{font-size:15px;min-height:50px;margin-top:20px}.gate-actions{display:flex;gap:12px;margin:10px 0 5px}.gate-actions>button{flex:1;min-height:54px;padding:15px;border:1px solid #666;border-radius:3px;background:#161616;color:#fff;font-weight:600}.gate-actions>button:first-child{background:#f2f2f2;color:#080808;border-color:#f2f2f2}.gate-actions>button:hover{box-shadow:inset 0 0 0 1px currentColor}.gate-answer{width:100%;padding:20px;text-align:left;border:1px solid #555;border-radius:3px;font-size:16px;display:block;margin-top:12px;background:#141414}.gate-answer span{font:12px var(--mono);color:#888;margin-right:13px}.gate-answer:hover{border-color:#fff;background:#222}.gate-hint{color:#999;font-size:13px;line-height:1.6;margin:12px 0 0}.gate-hash{font:14px/1.6 var(--mono)!important;letter-spacing:.4px}.gate-example{padding:14px 16px;border:1px solid #333;background:#090909;margin-bottom:22px;color:#bdbdbd;font-size:14px;line-height:1.7}.gate-example strong{color:#fff}.gate-private{margin-top:23px;padding-top:16px;border-top:1px solid #333;font-size:12px;line-height:1.7;color:#898989}.unlock-dialog .gate-error{min-height:22px;margin:12px 0 0;color:#fff;font-size:14px;line-height:1.5}.gate-names{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:23px}.agreement-title{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #444}.agreement-title h3{font-size:16px;margin:0}.agreement-title span{font:12px var(--mono);color:#aaa}.agreement-document{max-height:320px;overflow:auto;overscroll-behavior:contain;padding:20px 22px;background:#090909;border:1px solid #444;scrollbar-color:#888 #181818;border-radius:3px}.agreement-document h4{font-size:16px;margin:23px 0 10px;line-height:1.5}.agreement-document section:first-child h4{margin-top:0}.agreement-document p{font-size:15px;line-height:1.8;margin:0;color:#bcbcbc}.agreement-document .agreement-end{font:12px var(--mono);color:#fff;letter-spacing:1px;border-top:1px solid #444;margin-top:25px;padding-top:20px}.gate-read-progress{font-size:12px;color:#999;line-height:1.6;margin:10px 0 18px}.gate-check{display:flex!important;gap:12px;align-items:flex-start;font-size:14px!important;color:#ddd;cursor:pointer}.unlock-dialog .gate-check input{appearance:auto;display:inline-block;width:19px;min-width:19px;height:19px;margin:2px 0;accent-color:#fff}.gate-check:has(input:disabled){color:#858585}.signature-preview{margin-top:20px;border-top:1px solid #444;padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:16px}.signature-preview>span{font:12px var(--mono);color:#aaa}.signature-preview strong{font-family:Georgia,serif;font-size:23px;font-weight:400;font-style:italic;color:#eee;overflow-wrap:anywhere;text-align:right}.unlock-dialog.gate-denied{inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:32px 40px;background:#050505;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.gate-denied .gate-top{width:min(680px,100%);position:absolute;top:25px;left:50%;transform:translateX(-50%);padding:0 20px}.gate-denied .gate-progress,.gate-denied .gate-progress-track,.gate-denied .gate-private{display:none}.gate-denied .gate-heading{max-width:600px}.gate-denied .gate-heading h2{font:900 clamp(3rem,10vw,7rem)/.9 var(--display);margin:20px 0}.gate-error-code{font:700 16px var(--mono);letter-spacing:4px;color:#aaa;margin-bottom:25px}.gate-denied #gate-body{width:min(380px,100%)}.gate-denied .primary{width:100%}.gate-denied .gate-error{display:none}.gate-denied .gate-heading>p{color:#a2a2a2}.gate-denied::backdrop{background:#000}.gate-signed-note{font-size:12px;color:#999;line-height:1.65;margin:15px 0 0}
@media(max-width:600px){.unlock-dialog{padding:21px 22px}.gate-mark{font-size:12px}.gate-progress{margin-top:20px}.gate-progress-track{margin-bottom:24px}.unlock-dialog .gate-heading h2{font-size:34px}.gate-heading>p{font-size:15px}.gate-names{grid-template-columns:1fr;gap:14px}.agreement-document{max-height:280px;padding:16px}.agreement-title{align-items:flex-start}.agreement-title h3{font-size:15px}.agreement-title span{font-size:11px;white-space:nowrap}.signature-preview{align-items:flex-start;flex-direction:column}.signature-preview strong{text-align:left;font-size:22px}.gate-actions{gap:10px}.gate-private{font-size:12px}.unlock-dialog.gate-denied{padding:30px 24px}.gate-denied .gate-heading h2{font-size:62px}}
@media(prefers-reduced-motion:reduce){.gate-progress-track span{transition:none}}
.unlock-dialog:not([open]){display:none}
