#coffeePrompt{position:fixed;z-index:4;transform:translate(-50%,-100%);display:grid;gap:2px;min-height:48px;max-width:calc(100vw - 32px);padding:11px 19px;border:1px solid #e8c48b;border-radius:16px;background:#30261ff5;color:#fff0d4;font:650 14px/1.4 system-ui;box-shadow:0 7px 24px #160f0a66;cursor:pointer;text-align:center}
#coffeePrompt::after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;transform:translateX(-50%) rotate(45deg);background:#30261f;border-right:1px solid #e8c48b;border-bottom:1px solid #e8c48b}
#coffeePrompt small{font-size:10px;font-weight:450;color:#dfcbb6}#coffeePrompt kbd{font:600 10px system-ui}#coffeePrompt:hover{background:#53402b}#coffeePrompt:hover::after{background:#53402b}#coffeePrompt[hidden]{display:none}
.coffee-contact-active :is(.site-header,#walkPad,#movementHint,#roomCamera,#benchPrompt){display:none}
#coffeeContact{width:min(520px,calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;margin:auto;padding:30px;border:1px solid #c9a77a80;border-radius:24px;background:#28211ffb;color:#fff0d4;box-shadow:0 24px 90px #120d0bc0;scrollbar-color:#9a8065 transparent;color-scheme:dark}
#coffeeContact::backdrop{background:#18120b73;backdrop-filter:blur(3px)}
.coffee-contact-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.coffee-contact-eyebrow{margin:2px 0 6px;color:#dfbd88;font-size:10px;font-weight:650;letter-spacing:.14em}#coffeeContact h2{margin:0;font:500 29px/1.2 Georgia,"Times New Roman",serif;letter-spacing:-.5px}#coffeeClose{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-10px -10px 0 0;border:1px solid #b79b754a;border-radius:50%;background:#ffffff06;color:#fff0d4;font:26px/1 system-ui;cursor:pointer}#coffeeClose:hover{background:#ffffff14}
#coffeeDescription{margin:14px 0 6px;color:#e2ceba;font-size:13px;line-height:1.65}.coffee-preview-note{margin:0 0 23px;color:#cbb79f;font-size:11px;line-height:1.6}
.coffee-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px}.coffee-field{min-width:0}.coffee-field-wide{grid-column:1/-1}#coffeeForm label{display:block;margin-bottom:6px;color:#fff0d4;font-size:12px;font-weight:650}#coffeeForm label span{color:#cbb79f;font-size:10px;font-weight:400}#coffeeForm :is(input,textarea){display:block;width:100%;min-height:44px;margin:0;padding:11px 12px;border:1px solid #8b7561;border-radius:10px;background:#1c1918;color:#fff3df;font:14px/1.5 system-ui}#coffeeForm textarea{min-height:110px;resize:vertical}#coffeeForm [aria-invalid="true"]{border-color:#f0a895}
.coffee-field-error{margin:5px 0 0;color:#ffc2af;font-size:11px;line-height:1.5}.coffee-field-error[hidden]{display:none}
#coffeeErrors{margin:0 0 18px;padding:12px 14px;border:1px solid #e1a28a;border-radius:10px;background:#4b3025;color:#ffe0d1;font-size:12px}#coffeeErrors[hidden]{display:none}#coffeeErrors h3{margin:0 0 5px;font-size:12px}#coffeeErrors ul{padding-left:18px;margin:0}#coffeeErrors li+li{margin-top:4px}#coffeeErrors a{color:inherit;text-underline-offset:3px}
.coffee-form-footer{display:flex;align-items:center;gap:14px;margin-top:22px}#coffeeSubmit{flex:none;min-height:46px;padding:12px 19px;border:1px solid #f3cf92;border-radius:12px;background:#f3cf92;color:#38291c;font:700 12px/1.5 system-ui;cursor:pointer}#coffeeSubmit:hover{background:#ffe0aa}#coffeeFormStatus{margin:0;min-height:1.5em;color:#e5ccaa;font-size:11px;line-height:1.6}
#coffeePrompt:focus-visible,#coffeeContact :focus-visible{outline:3px solid #ffe4a1;outline-offset:4px}#coffeeContact :is(input,textarea):focus-visible{outline-offset:2px}#coffeeErrors:focus{outline:3px solid #ffe4a1;outline-offset:3px}
@media(max-width:520px){#coffeeContact{padding:24px 20px;border-radius:20px}#coffeeContact h2{font-size:26px}.coffee-fields{grid-template-columns:1fr;gap:14px}.coffee-field-wide{grid-column:auto}.coffee-form-footer{align-items:flex-start;flex-direction:column;gap:10px;margin-top:19px}#coffeeSubmit{width:100%}.coffee-preview-note{margin-bottom:18px}}
@media(forced-colors:active){#coffeePrompt,#coffeeContact{color:CanvasText;background:Canvas;border-color:CanvasText}#coffeePrompt::after{background:Canvas;border-color:CanvasText}#coffeePrompt small,#coffeeContact :is(label,label span,p){color:CanvasText}#coffeeContact :is(input,textarea){color:FieldText;background:Field;border-color:FieldText}#coffeeContact button{color:ButtonText;background:ButtonFace;border-color:ButtonText}#coffeeContact :focus-visible,#coffeePrompt:focus-visible{outline-color:Highlight}#coffeeErrors{color:CanvasText;background:Canvas;border-color:CanvasText}}
