.pbr{--ink:#202638;--accent:#424cb9;color:var(--ink);margin:24px 0}.pbr-drop{display:block;padding:34px 20px;text-align:center;border:2px dashed #aeb5df;border-radius:12px;background:#f7f8ff;cursor:pointer;font-size:18px}.pbr-drop small{display:block;margin-top:10px;font-size:14px}.pbr-drop input{display:block;margin:14px auto 0;max-width:100%}.pbr-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.pbr button,.pbr select{min-height:40px;padding:8px 12px;border:1px solid #d2d5e5;border-radius:6px;background:#fff;cursor:pointer}.pbr button[aria-selected=true]{background:var(--accent);color:#fff}.pbr button:disabled{opacity:.5;cursor:not-allowed}.pbr-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:20px}.pbr-controls{padding:16px;border:1px solid #e2e4ed;border-radius:9px}.pbr-field label{display:block;margin:0 0 16px}.pbr-field input[type=range]{display:block;width:100%;margin-top:7px}.pbr-field output{font-weight:700}.pbr-preview,.pbr-3d{min-height:260px;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 50%/20px 20px;border:1px solid #ddd;display:grid;place-items:center;overflow:hidden}.pbr-preview canvas,.pbr-preview img{max-width:100%;max-height:480px;object-fit:contain}.pbr-3d{display:block;margin-top:16px;background:#eef0f6}.pbr-3d>div{padding:8px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.pbr-3d canvas{display:block;width:100%;height:270px}.pbr-actions{display:flex;gap:8px;flex-wrap:wrap}.pbr-links{margin-top:20px}.pbr-controls p{font-size:13px}@media(max-width:650px){.pbr-layout{grid-template-columns:1fr}.pbr-controls{order:1}.pbr-layout>div{order:0}.pbr-3d canvas{height:220px}.pbr-drop{font-size:16px;padding:24px 12px}}
.pbr [hidden]{display:none!important}.pbr-error{padding:12px 14px;margin:12px 0;color:#8d2525;background:#fff1f0;border:1px solid #e8aaa5;border-radius:6px}
.pbr-preview canvas.is-painting{cursor:crosshair;touch-action:none}.pbr-field input[type=file]{display:block;max-width:100%;margin-top:7px}.pbr-field button{margin-bottom:14px}.pbr-tabs button:focus-visible,.pbr button:focus-visible,.pbr input:focus-visible,.pbr select:focus-visible{outline:3px solid #424cb9;outline-offset:2px}.pbr-layout>div{min-width:0}
@media(max-width:650px){.pbr-layout{grid-template-columns:minmax(0,1fr)}.pbr-controls{min-width:0}.pbr-tabs{max-width:100%}}
