[data-desk-mug] { -webkit-touch-callout:none; -webkit-user-select:none; user-select:none; touch-action:pan-y; }
[data-desk-mug] img { -webkit-user-drag:none; }
[data-desk-mug][data-desk-holding] { outline:3px solid #ffdc00; outline-offset:5px; border-radius:50%; }
.desk-access-dialog { box-sizing:border-box; position:fixed; inset:0; margin:auto; width:min(440px,calc(100% - 32px)); max-height:calc(100dvh - 32px); overflow-y:auto; border:3px solid #111; border-radius:12px; padding:36px 28px 28px; background:#fff9e9; color:#111; box-shadow:7px 7px 0 #111; font-family:Arial,sans-serif; text-align:left; text-transform:none; }
.desk-access-dialog::backdrop { background:rgba(17,17,17,.76); }
.desk-access-dialog .desk-access-close { position:absolute; top:6px; right:6px; width:44px; height:44px; border:0; background:transparent; color:#111; cursor:pointer; font-size:30px; }
.desk-access-dialog .desk-access-eyebrow { margin:0 30px 14px 0; font-family:monospace; font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.desk-access-dialog h2 { margin:0; font-size:32px; font-weight:900; line-height:1.15; }
.desk-access-dialog .desk-access-intro { margin:10px 0 24px; color:#5b5445; font-size:14px; }
.desk-access-form { display:grid; gap:18px; }
.desk-access-form label { display:grid; gap:7px; font-size:13px; font-weight:700; }
.desk-access-form input { box-sizing:border-box; width:100%; min-width:0; min-height:48px; padding:11px 12px; border:1px solid #857b67; border-radius:6px; background:#fffdf7; color:#111; font:16px Arial,sans-serif; }
.desk-access-dialog :focus-visible { outline:3px solid #a32616; outline-offset:3px; }
.desk-access-form .desk-access-submit { min-height:48px; border:2px solid #111; border-radius:6px; padding:12px; background:#ffdc00; color:#111; font-size:16px; font-weight:800; cursor:pointer; box-shadow:2px 2px 0 #111; }
.desk-access-form .desk-access-submit:disabled { cursor:wait; opacity:.65; }
.desk-access-form .desk-access-error { margin:0; color:#a32616; font-size:14px; }
