.af-locked { overflow: hidden; }
.af-dialog { color-scheme: light; box-sizing:border-box; width:min(640px,calc(100% - 24px)); max-width:calc(100% - 24px); max-height:calc(100dvh - 28px); padding:0; margin:auto; border:1px solid #837051; border-radius:3px; background:#f6f2e9; color:#211e1b; font:400 16px/1.55 var(--sans,Montserrat,Arial,sans-serif); overscroll-behavior:contain; overflow-y:auto; overflow-wrap:break-word; box-shadow:0 16px 74px #0008; }
.af-dialog::backdrop { background:#100d0bca; }
.af-dialog *, .af-dialog *::before, .af-dialog *::after { box-sizing:border-box; }
.af-dialog .af-bar { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:6px clamp(16px,4vw,28px); color:#eee0c1; background:#211c18; border-bottom:1px solid #816841; }
.af-dialog .af-bar>span, .af-dialog .af-kicker { margin:0; font-size:12px; font-weight:600; line-height:1.45; letter-spacing:.09em; text-transform:uppercase; }
.af-dialog .af-kicker { color:#6c512d; }
.af-dialog .af-body { padding:clamp(18px,4vw,33px); }
.af-dialog h2, .af-dialog h3 { color:#271d14; font-family:var(--serif,'Cormorant Garamond',Georgia,serif); font-weight:600; line-height:1.09; letter-spacing:-.01em; text-wrap:balance; }
.af-dialog h2 { font-size:clamp(32px,4vw,45px); margin:7px 0 15px; }
.af-dialog h3 { font-size:26px; margin:20px 0 8px; }
.af-dialog p { color:#302d28; margin:10px 0; font-size:15px; line-height:1.58; }
.af-dialog p.af-note, .af-dialog p.af-price, .af-dialog output.af-price { margin:15px 0; padding:11px 14px; border-left:3px solid #967540; background:#eae3d4; color:#322b20; font-size:14px; }
.af-dialog .af-price strong { display:block; }
.af-dialog .af-help, .af-dialog #af-preview p { color:#514a41; font-size:14px; }
.af-dialog .af-note a { color:#57411f; text-decoration:underline; text-underline-offset:3px; }
.af-dialog form, .af-dialog fieldset { display:grid; grid-template-columns:minmax(0,1fr); gap:7px; margin:12px 0; min-width:0; }
.af-dialog fieldset { padding:12px 14px 14px; border:1px solid #c8baa0; }
.af-dialog legend { color:#584728; padding:0 6px; font-weight:650; font-size:14px; }
.af-dialog label { display:block; color:#28241f; font-size:14px; font-weight:600; margin-top:5px; }
.af-dialog input, .af-dialog select, .af-dialog textarea { box-sizing:border-box; margin:0; color:#231f19; background:#fffdf8; border:1px solid #8c8272; border-radius:2px; font:inherit; width:100%; max-width:100%; min-width:0; min-height:45px; padding:8px 10px; }
.af-dialog textarea { min-height:80px; resize:vertical; }
.af-dialog input::placeholder, .af-dialog textarea::placeholder { color:#625b50; opacity:1; }
.af-dialog input[type=file] { font-size:14px; }
.af-dialog input[type=file]::file-selector-button { display:block; margin:0 0 4px; font:inherit; border:1px solid #8f816e; border-radius:2px; background:#eae2d1; color:#271f14; padding:5px 9px; }
.af-dialog .af-check { display:flex; gap:10px; align-items:flex-start; font-weight:450; }
.af-dialog .af-check input { flex:0 0 19px; width:19px; height:19px; min-height:19px; margin:2px 0; accent-color:#725525; }
.af-dialog .af-error:not(:empty) { color:#842d23; font-weight:650; font-size:14px; padding-left:9px; border-left:3px solid #a65241; }
.af-dialog .af-error:empty { display:none; }
.af-dialog [aria-invalid=true] { border-color:#9d362c; }
.af-dialog .af-actions { display:flex; align-items:center; gap:8px 12px; flex-wrap:wrap; margin-top:14px; }
.af-dialog button { width:auto; min-width:0; max-width:100%; min-height:44px; height:auto; border-radius:2px; padding:9px 13px; font:550 14px/1.45 var(--sans,Montserrat,Arial,sans-serif); cursor:pointer; text-transform:none; letter-spacing:normal; touch-action:manipulation; }
.af-dialog button.af-primary { color:#fff6e6; background:#30261c; border:1px solid #30261c; }
.af-dialog button.af-secondary, .af-dialog button.af-list { background:transparent; color:#322619; border:1px solid #82735d; }
.af-dialog button.af-quiet { background:transparent; color:#674b23; border:0; padding-inline:4px; text-decoration:underline; text-underline-offset:3px; }
.af-dialog .af-bar button { color:#f3e6cd; }
.af-dialog :focus-visible { outline:3px solid #3976a4; outline-offset:3px; }
.af-dialog :is(h2):focus { outline:0; }
.af-dialog .af-bar :focus-visible { outline-color:#f2d99c; }
.af-dialog details { border-block:1px solid #c8baa0; padding:8px 0; }
.af-dialog summary { cursor:pointer; padding:5px 0; font-size:14px; font-weight:600; }
.af-dialog #af-preview img, .af-dialog .af-motif { display:block; width:auto; max-width:100%; max-height:270px; object-fit:contain; margin:12px 0; border:1px solid #bfb39c; }
.af-dialog .af-trap {position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.af-dialog .af-trap input,.af-dialog .af-trap label {min-height:0;padding:0}
.af-dialog [data-status]:empty {display:none}
.af-dialog button:disabled {cursor:wait;opacity:.75}
.af-dialog #af-preview img {display:block;max-height:220px;max-width:100%;object-fit:contain;margin-top:8px}
.af-dialog .af-note a,.af-dialog .af-help a,.af-dialog .af-contact-link {color:#5c401b}
@media(max-width:480px){.af-dialog .af-body{padding:17px}.af-dialog fieldset{padding:10px}.af-dialog .af-actions{align-items:stretch;flex-direction:column}}
@media(forced-colors:active){.af-dialog button{border:1px solid ButtonText}.af-dialog :focus-visible{outline:2px solid Highlight}}
