/* بلیط‌های مشتری در حساب کاربری */
.kmt{margin:0 0 28px;direction:rtl;text-align:right}
.kmt *{box-sizing:border-box}
.kmt .kmt-title{display:flex;align-items:center;gap:8px;margin:0 0 14px!important;font-size:19px!important;font-weight:900}
.kmt-ti{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,#fde68a,#f59e0b);animation:kmtWob 3s ease-in-out infinite}
@keyframes kmtWob{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
.kmt-list{display:grid;gap:16px}
.kmt-t{--a:#2e7d32;--b:#00a7b5;--r:14px;position:relative;display:flex;min-height:150px;border-radius:20px;filter:drop-shadow(0 14px 18px rgba(20,40,40,.14));opacity:0;transform:translateY(18px) scale(.98);animation:kmtIn .6s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--i) * 110ms)}
@keyframes kmtIn{to{opacity:1;transform:none}}
.kmt-t:hover{transform:translateY(-3px);transition:transform .3s}
.kmt-main,.kmt-stub{position:relative;overflow:hidden}
/* سوراخ‌های پرفراژ بین دو بخش بلیط */
.kmt-main{flex:1;min-width:0;padding:16px 18px;border-radius:0 20px 20px 0;background:#fff;-webkit-mask:radial-gradient(circle var(--r) at 0 0,#0000 97%,#000) top/100% 51% no-repeat,radial-gradient(circle var(--r) at 0 100%,#0000 97%,#000) bottom/100% 51% no-repeat;mask:radial-gradient(circle var(--r) at 0 0,#0000 97%,#000) top/100% 51% no-repeat,radial-gradient(circle var(--r) at 0 100%,#0000 97%,#000) bottom/100% 51% no-repeat}
.kmt-stub{flex:0 0 118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:14px 8px;color:#fff;text-align:center;border-radius:20px 0 0 20px;background:linear-gradient(160deg,var(--a),var(--b));-webkit-mask:radial-gradient(circle var(--r) at 100% 0,#0000 97%,#000) top/100% 51% no-repeat,radial-gradient(circle var(--r) at 100% 100%,#0000 97%,#000) bottom/100% 51% no-repeat;mask:radial-gradient(circle var(--r) at 100% 0,#0000 97%,#000) top/100% 51% no-repeat,radial-gradient(circle var(--r) at 100% 100%,#0000 97%,#000) bottom/100% 51% no-repeat}
.kmt-stub:before{content:"";position:absolute;inset:16px 0 16px auto;border-right:2px dashed rgba(255,255,255,.55)}
/* درخشش متحرک روی بلیط فعال */
.kmt-ok .kmt-stub:after{content:"";position:absolute;top:-30%;bottom:-30%;width:45%;right:-60%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-18deg);animation:kmtShine 3.8s 1s ease-in-out infinite}
@keyframes kmtShine{0%,55%{right:-60%}100%{right:140%}}
.kmt-day{font-size:34px;font-weight:900;line-height:1}
.kmt-mon{font-size:13px;font-weight:800;opacity:.95}
.kmt-cd{margin-top:6px;padding:2px 10px;border-radius:12px;background:rgba(255,255,255,.22);font-size:11.5px;font-weight:800;animation:kmtPulse 2.2s ease-in-out infinite}
@keyframes kmtPulse{50%{background:rgba(255,255,255,.38)}}
.kmt-bar{width:70px;height:20px;margin-top:8px;opacity:.85;background:repeating-linear-gradient(90deg,#fff 0 2px,transparent 2px 4px,#fff 4px 5px,transparent 5px 8px,#fff 8px 11px,transparent 11px 12px)}
.kmt-no{font-size:11px;font-weight:700;opacity:.9;direction:ltr}
.kmt-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.kmt-img{width:56px;height:56px;border-radius:14px;object-fit:cover;flex:none;box-shadow:0 6px 14px -8px rgba(0,0,0,.4)}
.kmt-head{min-width:0}
.kmt .kmt-name{margin:0 0 4px!important;font-size:16px!important;font-weight:900;line-height:1.6}
.kmt .kmt-name a{color:#22303a!important;text-decoration:none!important}
.kmt-st{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:20px;font-size:11.5px;font-weight:800;background:#ecfdf3;color:#15803d}
.kmt-st i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 currentColor;animation:kmtDot 1.8s infinite}
@keyframes kmtDot{0%{box-shadow:0 0 0 0 rgba(21,128,61,.5)}100%{box-shadow:0 0 0 7px rgba(21,128,61,0)}}
.kmt-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}
.kmt-info>div{padding:7px 10px;border-radius:12px;background:#f5f8f7}
.kmt-info small{display:block;font-size:11px;color:#7b8790;font-weight:700}
.kmt-info b{display:block;font-size:13px;color:#22303a;font-weight:800;line-height:1.7}
/* وضعیت‌ها */
.kmt-wait{--a:#d97706;--b:#f59e0b}.kmt-wait .kmt-st{background:#fff7e6;color:#b45309}.kmt-wait .kmt-st i{animation:none}
.kmt-off{--a:#9ca3af;--b:#6b7280;filter:grayscale(.6) drop-shadow(0 10px 14px rgba(0,0,0,.08))}.kmt-off .kmt-st{background:#f3f4f6;color:#6b7280}.kmt-off .kmt-st i{animation:none}
.kmt-off .kmt-name{text-decoration:line-through}
.kmt-past{--a:#64748b;--b:#94a3b8}.kmt-past .kmt-st{background:#f1f5f9;color:#475569}.kmt-past .kmt-st i{animation:none}
@media(max-width:600px){
 .kmt-t{flex-direction:column-reverse;min-height:0}
 .kmt-main{border-radius:0 0 20px 20px;-webkit-mask:radial-gradient(circle var(--r) at 0 0,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--r) at 100% 0,#0000 97%,#000) right/51% 100% no-repeat;mask:radial-gradient(circle var(--r) at 0 0,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--r) at 100% 0,#0000 97%,#000) right/51% 100% no-repeat}
 .kmt-stub{flex:0 0 auto;flex-direction:row;flex-wrap:wrap;gap:4px 10px;padding:12px 16px;border-radius:20px 20px 0 0;-webkit-mask:radial-gradient(circle var(--r) at 0 100%,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--r) at 100% 100%,#0000 97%,#000) right/51% 100% no-repeat;mask:radial-gradient(circle var(--r) at 0 100%,#0000 97%,#000) left/51% 100% no-repeat,radial-gradient(circle var(--r) at 100% 100%,#0000 97%,#000) right/51% 100% no-repeat}
 .kmt-stub:before{inset:auto 16px 0 16px;border-right:0;border-bottom:2px dashed rgba(255,255,255,.55)}
 .kmt-day{font-size:26px}.kmt-cd{margin-top:0}.kmt-bar{margin:0 auto 0 0;width:60px}
 .kmt-info{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){.kmt-t,.kmt-ti,.kmt-cd,.kmt-st i,.kmt-ok .kmt-stub:after{animation:none!important}.kmt-t{opacity:1;transform:none}}
