.tm-request-open,.tm-request-add,.tm-request-dialog button{background:#eac06c;color:#18140d;border:1px solid #f2ce86;border-radius:8px;padding:.65em 1em;font-weight:700;cursor:pointer}
.tm-request-open{position:fixed;z-index:999;right:1rem;bottom:1rem;box-shadow:0 2px 12px #0008}
.tm-request-add:disabled{opacity:.7;cursor:default}
.tm-request-dialog{box-sizing:border-box;width:min(92vw,42rem);max-height:85vh;overflow:auto;background:#202022;color:#fff;border:1px solid #eac06c;border-radius:12px;padding:clamp(1rem,4vw,2rem)}
.tm-request-dialog::backdrop{background:#000a}
.tm-request-dialog h2{color:#f2ce86}
.tm-request-dialog label:not([hidden]){display:block;margin:.6rem 0}
.tm-request-dialog input,.tm-request-dialog textarea{box-sizing:border-box;width:100%}
.tm-request-dialog li{margin:.6rem 0}
.tm-request-dialog form{margin-bottom:1rem}
.tm-request-dialog [hidden]{display:none!important}

.tm-request-dialog .tm-request-error,.tm-request-dialog .tm-request-send-status{display:block;color:#ffd1c5;font-weight:600}
.tm-request-dialog .tm-request-error:not(:empty){margin-top:.35rem}
.tm-request-dialog [aria-invalid="true"]{border:2px solid #b33424!important}

.tm-request-add-all{margin:.25rem 0 .5rem;max-width:100%}
.tm-jtl-variations a[hidden]{display:none!important}

.tm-request-total{border-top:1px solid #eac06c;padding-top:1rem;font-size:1.1rem;font-weight:700;color:#f2ce86}

.tm-catalog-request{display:block;margin-top:12px}.tm-request-catalog-add{box-sizing:border-box;width:100%;white-space:normal;line-height:1.4;text-align:center;font-size:15px;padding:11px 12px}.tm-request-catalog-add:disabled{opacity:.8}

.tm-request-dialog{width:min(94vw,42rem);padding:clamp(14px,3vw,24px);max-height:90vh;max-height:90dvh}
.tm-request-dialog h2{font-size:clamp(21px,5vw,27px);margin:0 0 8px}
.tm-request-dialog .tm-request-intro{font-size:13px;line-height:1.45;margin:0 0 12px;color:#ddd}
.tm-request-dialog .tm-request-items{list-style:none;margin:0;padding:0;max-height:42vh;max-height:42dvh;overflow-y:auto;overscroll-behavior:contain}
.tm-request-dialog .tm-request-items li{display:flex;align-items:center;gap:10px;margin:0;padding:10px 0;border-bottom:1px solid #ffffff24;font-size:14px;line-height:1.35}
.tm-request-thumb{flex:0 0 48px;width:48px;height:48px;object-fit:contain;border-radius:6px;background:#fff}
.tm-request-item-info{flex:1;min-width:0}
.tm-request-item-info summary{font-size:14px;font-weight:700;line-height:1.3;color:#fff;cursor:pointer;overflow-wrap:anywhere}
.tm-request-item-info details p{font-size:12px;margin:6px 0;color:#ddd;overflow-wrap:anywhere}
.tm-request-item-meta{display:block;font-size:12px;color:#c8c3bb;margin-top:3px;overflow-wrap:anywhere}
.tm-request-item-price{display:block;font-size:13px;color:#f2ce86;font-weight:700;margin-top:3px}
.tm-request-dialog button.tm-request-remove{flex:0 0 36px;width:36px;height:44px;min-width:36px;padding:0;font-size:24px;line-height:1;background:transparent;color:#f2ce86;border-color:#746039}
.tm-request-dialog .tm-request-total{font-size:15px;line-height:1.4;margin:12px 0 6px;padding-top:10px}
.tm-request-status{font-size:12px;line-height:1.4;margin:6px 0}
@media(max-width:480px){.tm-request-dialog .tm-request-items li{gap:8px;padding:8px 0}.tm-request-thumb{flex-basis:44px;width:44px;height:44px}}

.tm-request-add.is-added,.tm-request-add.is-added:disabled,.tm-request-add.is-added:hover{background:#216739!important;color:#fff!important;border-color:#40975a!important;opacity:1!important;cursor:default}
