.tk-gift-picker:not([hidden]){margin:12px 0 18px}
.tk-gift-picker>p{margin-bottom:7px;font-weight:700}
.tk-gift-designs{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:7px}
.tk-gift-picker button{background:#f8f5ee;color:#254438;border:1px solid #ddd2bf;border-radius:9px;font:inherit;min-width:0}
.tk-gift-picker button[aria-pressed=true]{border-color:#235641;box-shadow:inset 0 0 0 1px #235641;background:#eaf1e8}
.tk-gift-designs button{padding:5px;min-height:98px}
.tk-gift-designs img{display:block;width:60px;height:64px;object-fit:contain;margin:0 auto 3px}
.tk-gift-designs span{display:block;font-size:11px;line-height:1.4}
.tk-gift-directions{display:flex;gap:6px;margin-top:9px}
.tk-gift-directions button{padding:5px 13px}
.tk-voice{margin:12px 0;color:#254438}
.tk-voice [hidden]{display:none!important}
.tk-voice button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #ceddd4;border-radius:12px;background:#eef5ef;color:#254438;font:inherit;padding:8px 12px;cursor:pointer;min-height:40px;box-shadow:none;text-transform:none}
.tk-voice button:focus-visible{outline:2px solid #347552;outline-offset:2px}
.tk-voice button:disabled{opacity:.65;cursor:wait}
.tk-voice-dialog{position:fixed;inset:0;width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;margin:auto;padding:18px;border:1px solid #d5e1d8;border-radius:18px;background:#fff;color:#254438;box-shadow:0 16px 60px #142f2740}
.tk-voice-dialog::backdrop{background:#13291e70}
.tk-voice-dialog header,.tk-voice-dialog footer,.tk-voice-source,.tk-voice-track{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tk-voice-dialog header{justify-content:space-between}
.tk-voice-dialog footer{justify-content:flex-end}
.tk-voice-help{font-size:13px;margin:8px 0 14px;line-height:1.8}
.tk-voice-source small{color:inherit;opacity:.75}
.tk-voice button[data-confirm],.tk-voice button[data-play]{background:#255a43;color:white;border-color:#255a43}
.tk-voice button[data-delete]{color:#912d35;background:#fff4f3;border-color:#f1d5d3}
.tk-voice-track{direction:ltr;flex-wrap:nowrap;background:#eef5ef;border-radius:14px;padding:8px;margin-top:10px}
.tk-voice-wave{display:flex;align-items:center;justify-content:space-between;gap:2px;flex:1;min-width:0;height:38px;cursor:pointer}
.tk-voice-wave i{width:3px;min-width:1px;background:#8dac9b;border-radius:3px}
.tk-voice-wave i.played{background:#255a43}
.tk-voice [data-time]{font-variant-numeric:tabular-nums;font-size:12px}
.tk-voice [data-status]{font-size:13px;margin:8px 0;line-height:1.7}
.tk-voice[data-state=recording] [data-record]{background:#fff0ef;color:#9d2630;border-color:#edb8b8}
.tk-voice[data-state=recording] [data-record]::before{content:'';height:9px;width:9px;border-radius:50%;background:#d52d3c;animation:tk-voice-pulse 1s ease-in-out infinite alternate}
.tk-voice[data-state=recording] .tk-voice-wave i{background:#c84351}
@keyframes tk-voice-pulse{to{opacity:.4}}
@media(prefers-reduced-motion:reduce){.tk-voice[data-state=recording] [data-record]::before{animation:none}}

.tk-voice-dialog:not([open]){display:none!important}
.tk-voice-dialog [data-tk-voice-close]{position:relative;pointer-events:auto;touch-action:manipulation}
