.cm-shop-dialog{width:min(800px,calc(100% - 24px));max-height:90vh;padding:24px;border:1px solid #cbd5e1;border-radius:14px;color:#142337;background:#fff;box-shadow:0 20px 80px #0005}.cm-shop-dialog::backdrop{background:#102033aa}.cm-shop-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.cm-shop-head h2{margin:0;font-size:28px}.cm-shop-close{font-size:30px;min-width:44px;min-height:44px}.cm-shop-dialog button,.cm-shop-dialog input{font:inherit;border:1px solid #64748b;border-radius:6px;background:#fff;color:#142337;padding:8px 12px}.cm-shop-dialog button{cursor:pointer}.cm-shop-line{display:grid;grid-template-columns:90px 1fr auto;gap:18px;padding:20px 0;border-bottom:1px solid #d4dbe4}.cm-shop-line img{object-fit:contain;background:#f8fafc}.cm-shop-line h3{font-size:17px;margin:0 0 6px;line-height:1.4}.cm-shop-line p{margin:5px 0;color:#334155;font-size:15px}.cm-shop-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px}.cm-shop-controls input{width:76px}.cm-shop-line .cm-shop-warning,.cm-shop-status{font-weight:650;color:#8a3a00}.cm-shop-status:empty{display:none}.cm-shop-totals{margin:24px 0}.cm-shop-totals div{display:flex;justify-content:space-between;gap:16px;padding:7px 0}.cm-shop-totals dd{margin:0;font-weight:700}.cm-shop-totals div:last-child{border-top:2px solid #142337;font-size:21px;padding-top:12px}.cm-shop-actions{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-top:24px}.cm-shop-actions .button{background:#142337;color:#fff;padding:12px 24px;text-decoration:none;border-radius:6px;font-weight:700}.roller-purchase{display:grid;gap:7px;min-width:145px}.roller-purchase label{font-weight:600;font-size:14px;color:#142337}.roller-purchase input{width:80px;padding:8px;border:1px solid #64748b;border-radius:5px;background:#fff;color:#142337;font:inherit}.roller-purchase .button{white-space:normal;font:inherit;cursor:pointer}.roller-help{font-size:13px;color:#26486a;text-decoration:underline}.cm-shop-dialog :focus-visible,.roller-purchase :focus-visible{outline:3px solid #1976d2;outline-offset:3px}@media(max-width:560px){.cm-shop-dialog{padding:18px}.cm-shop-line{grid-template-columns:1fr auto;gap:10px}.cm-shop-line img{display:none}.cm-shop-line>strong{font-size:14px}.cm-shop-controls{gap:7px}.cm-shop-actions>*{text-align:center;flex:1}.cm-shop-head h2{font-size:24px}}
