/* Borangly Phase 18 — QR Poster Maker */
.b18-modal-open{overflow:hidden}
.b18-wrap{position:fixed;inset:0;z-index:15000;background:rgba(12,24,43,.42);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:18px}
.b18-modal{width:min(1220px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fffefa;border:1px solid #dbe5f2;border-radius:24px;box-shadow:0 34px 100px rgba(7,26,59,.24);padding:24px}
.b18-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:2px 2px 20px;border-bottom:1px solid #e5edf7}
.b18-head h2{margin:3px 0 6px;color:#10284b;font-size:32px;letter-spacing:-.045em}.b18-head p{margin:0;color:#708099;font-size:14px;line-height:1.5}.b18-eyebrow{display:block;color:#1769ff;font-size:11px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.b18-close{flex:0 0 auto;width:42px;height:42px;border:0;border-radius:12px;background:#edf3fb;color:#23466f;font-size:24px;line-height:1;cursor:pointer}.b18-close:hover{background:#e4edf9}
.b18-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(420px,1.22fr);gap:24px;padding-top:22px;align-items:start}.b18-controls{display:grid;gap:15px}.b18-controls label:not(.b18-check){display:grid;gap:7px;color:#334b6a;font-size:12px;font-weight:800}.b18-controls input,.b18-controls textarea,.b18-controls select{width:100%;border:1px solid #d4e0ef;border-radius:11px;background:#fff;padding:11px 12px;color:#183657;font:inherit;outline:none}.b18-controls textarea{resize:vertical;min-height:86px}.b18-controls input:focus,.b18-controls textarea:focus,.b18-controls select:focus{border-color:#79aaff;box-shadow:0 0 0 4px rgba(23,105,255,.08)}.b18-controls small{font-size:11px;font-weight:500;color:#8190a6}.b18-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.b18-check{display:flex;align-items:center;gap:9px;color:#405878;font-size:13px;font-weight:700}.b18-check input{width:18px;height:18px;accent-color:#1769ff}.b18-linkbox{padding:12px 13px;border:1px solid #dce7f4;border-radius:12px;background:#f6f9fd}.b18-linkbox span{display:block;color:#7e8da3;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:4px}.b18-linkbox strong{display:block;color:#23466f;font-size:12px;word-break:break-all}
.b18-preview-shell{position:sticky;top:0;display:grid;gap:14px}.b18-preview{display:flex;align-items:center;justify-content:center;min-height:610px;padding:22px;border:1px solid #dce6f2;border-radius:19px;background:linear-gradient(145deg,#eef4fb,#f9fbfe);overflow:hidden}.b18-preview canvas{display:block;max-width:100%;max-height:70vh;width:auto;height:auto;border-radius:12px;box-shadow:0 14px 50px rgba(16,40,75,.13)}.b18-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.b18-btn{min-height:46px;border-radius:11px;padding:10px 14px;font-weight:850;font-size:13px;cursor:pointer}.b18-btn.secondary{border:1px solid #cbd9eb;background:#fff;color:#17365f}.b18-btn.secondary:hover{background:#f4f8fd}.b18-btn.primary{border:1px solid #1769ff;background:#1769ff;color:#fff}.b18-btn.primary:hover{background:#0e5be9}.b18-create-poster{border-color:#1769ff!important;background:#1769ff!important;color:#fff!important}
.b18-row-poster{display:inline-flex!important;align-items:center;gap:5px}.b18-row-poster span:last-child{font-size:12px}.b18-toast{position:fixed;z-index:17000;left:50%;bottom:24px;transform:translate(-50%,12px);opacity:0;background:#10284b;color:#fff;border-radius:11px;padding:10px 14px;font-size:13px;font-weight:800;box-shadow:0 14px 40px rgba(7,26,59,.24);transition:.18s}.b18-toast.show{opacity:1;transform:translate(-50%,0)}.b18-toast.bad{background:#8b3434}
@media(max-width:980px){.b18-grid{grid-template-columns:1fr}.b18-preview-shell{position:static}.b18-preview{min-height:520px}.b18-preview canvas{max-height:64vh}}
@media(max-width:720px){.b18-wrap{padding:0;align-items:stretch}.b18-modal{max-height:100vh;border-radius:0;border:0;padding:16px}.b18-head{position:sticky;top:0;z-index:2;background:#fffefa;padding:3px 0 14px}.b18-head h2{font-size:27px}.b18-grid{gap:18px;padding-top:16px}.b18-two{grid-template-columns:1fr}.b18-preview{min-height:390px;padding:12px}.b18-preview canvas{max-height:58vh}.b18-actions{grid-template-columns:1fr}.s12-actions{flex-wrap:wrap}.s12-actions .b18-row-poster{flex:1}}
@media(max-width:460px){.b18-modal{padding:13px}.b18-head p{font-size:12px}.b18-preview{min-height:330px}.b18-controls{gap:12px}}
