.360-qr-app{max-width:1180px;margin:32px auto;padding:0 18px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033}.360-qr-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.net360-kicker{font-size:11px;font-weight:800;letter-spacing:.14em;color:#667085}.360-qr-hero h2{margin:5px 0 6px;font-size:32px;letter-spacing:-.03em}.360-qr-hero p{margin:0;color:#667085}.360-qr-hero-badge{background:#111827;color:#fff;border-radius:14px;padding:14px 18px;text-align:right;min-width:105px}.360-qr-hero-badge strong{display:block;font-size:25px}.360-qr-hero-badge span{font-size:11px;opacity:.72}.net360-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.net360-stat{background:#fff;border:1px solid #e6e8ec;border-radius:14px;padding:17px 18px;box-shadow:0 3px 12px rgba(16,24,40,.04)}.net360-stat span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#667085}.net360-stat strong{display:block;margin-top:5px;font-size:24px}.net360-stat .live{font-size:17px}.360-qr-card{background:#fff;border:1px solid #e6e8ec;border-radius:16px;padding:24px;box-shadow:0 4px 18px rgba(16,24,40,.045);margin-bottom:26px}.net360-card-title>div{display:flex;gap:12px;align-items:flex-start}.net360-step{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#111827;color:#fff;font-size:11px;font-weight:800}.net360-card-title h3{margin:0;font-size:19px}.net360-card-title p{margin:4px 0 0;color:#667085;font-size:13px}.net360-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.net360-form-grid label{font-size:13px;font-weight:700}.net360-form-grid small{font-weight:400;color:#667085}.net360-form-grid .full{grid-column:1/-1}.net360-form-grid input{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px 13px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:#172033;outline:none}.net360-form-grid input:focus{border-color:#667085;box-shadow:0 0 0 3px rgba(17,24,39,.08)}.net360-form-actions{display:flex;gap:8px}.net360-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d0d5dd;background:#fff;color:#172033;border-radius:9px;padding:9px 13px;text-decoration:none;cursor:pointer;font-size:13px;line-height:1.2}.net360-btn.primary{background:#111827;color:#fff;border-color:#111827;font-weight:700}.net360-btn.danger{color:#b42318;border-color:#f0b7b0}.net360-btn:hover{transform:translateY(-1px)}.net360-list-head{display:flex;justify-content:space-between;align-items:end;margin:8px 0 14px}.net360-list-head h3{margin:4px 0 0;font-size:24px}.net360-list-head>span{font-size:12px;color:#667085}.360-qr-grid{display:grid;gap:16px}.360-qr-item{display:grid;grid-template-columns:190px 1fr;gap:22px;background:#fff;border:1px solid #e6e8ec;border-radius:16px;padding:18px;box-shadow:0 3px 15px rgba(16,24,40,.035)}.360-qr-item.is-inactive{opacity:.78}.360-qr-visual{display:grid;place-items:center;background:#f8fafc;border-radius:12px;min-height:190px}.360-qr-visual img{width:178px;height:178px;object-fit:contain}.net360-item-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.net360-item-top h3{margin:0 0 7px;font-size:19px}.net360-item-top code{background:#f2f4f7;border-radius:6px;padding:4px 7px;font-size:12px}.net360-status{font-size:11px;font-weight:800;border-radius:999px;padding:6px 9px;white-space:nowrap}.net360-status.active{background:#e8f7ee;color:#18703b}.net360-status.inactive{background:#fef0ef;color:#b42318}.net360-url-box{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin:16px 0 10px;padding:10px 12px;background:#f8fafc;border-radius:9px}.net360-url-box span,.net360-destination span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#667085}.net360-url-box a{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#344054}.net360-copy{border:0;background:transparent;color:#344054;font-size:11px;font-weight:700;cursor:pointer}.net360-destination{margin:10px 0;color:#475467;font-size:12px;word-break:break-word}.net360-destination span{display:block;margin-bottom:3px}.net360-metrics{display:flex;gap:22px;margin:14px 0;color:#667085;font-size:11px}.net360-metrics strong{color:#172033}.net360-actions{display:flex;flex-wrap:wrap;gap:5px}.net360-actions form{display:inline}.net360-alert{padding:12px 15px;border-radius:10px;margin:0 0 17px;font-size:13px}.net360-alert.ok{background:#e8f7ee;color:#176b39}.net360-alert.error{background:#fef0ef;color:#a32920}.net360-empty{text-align:center;background:#fff;border:1px dashed #d0d5dd;border-radius:16px;padding:50px 25px}.net360-empty-icon{font-size:40px}.net360-empty h3{margin:10px 0 5px}.net360-empty p{margin:0;color:#667085}.360-qr-app a{color:inherit}@media(max-width:760px){.360-qr-hero{align-items:flex-start;flex-direction:column}.360-qr-hero-badge{align-self:stretch;text-align:left}.net360-stats{grid-template-columns:1fr}.net360-form-grid{grid-template-columns:1fr}.net360-form-grid .full{grid-column:auto}.360-qr-item{grid-template-columns:1fr}.360-qr-visual{min-height:220px}.360-qr-visual img{width:205px;height:205px}.net360-item-top{flex-direction:column}.net360-url-box{grid-template-columns:1fr}.net360-url-box a{white-space:normal;word-break:break-all}.net360-metrics{flex-direction:column;gap:6px}}


/* 0.5.2 — formulario moderno unificado + modal QR */
.net360-form-grid label{display:block;font-size:12px;font-weight:700;color:#172033}
.net360-form-grid input[type="text"],.net360-form-grid input[type="url"],.net360-form-grid input[type="email"],.net360-form-grid input[type="number"],.net360-form-grid input[type="search"],.net360-form-grid input[type="password"],.net360-form-grid select,.net360-form-grid textarea{
    display:block;width:100%;box-sizing:border-box;min-height:46px;margin-top:7px;padding:0 14px;border:1px solid #c9d9dc;border-radius:10px;background:#fff;color:#172033;outline:none;box-shadow:0 2px 5px rgba(16,24,40,.025);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease
}
.net360-form-grid textarea{min-height:100px;padding:12px 14px;resize:vertical}
.net360-form-grid input::placeholder,.net360-form-grid textarea::placeholder{color:#8a96a3;opacity:1}
.net360-form-grid input:hover,.net360-form-grid select:hover,.net360-form-grid textarea:hover{border-color:#a9c4c7;background:#fcfefe}
.net360-form-grid input:focus,.net360-form-grid select:focus,.net360-form-grid textarea:focus{border-color:#087d82;box-shadow:0 0 0 3px rgba(8,125,130,.13);background:#fff}
.net360-image-trigger{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;cursor:pointer}
.360-qr-visual .net360-image-trigger{width:100%;height:100%;border-radius:12px}
.360-qr-visual .net360-image-trigger:focus-visible{outline:3px solid rgba(8,125,130,.25);outline-offset:3px}
.net360-image-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:24px;box-sizing:border-box}
.net360-image-modal[hidden]{display:none}
.net360-image-modal-backdrop{position:absolute;inset:0;background:rgba(7,21,27,.72);backdrop-filter:blur(4px)}
.net360-image-modal-dialog{position:relative;z-index:1;width:min(560px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:18px;padding:22px;box-sizing:border-box;box-shadow:0 24px 80px rgba(0,0,0,.25)}
.net360-image-modal-head{padding-right:42px;margin-bottom:16px}.net360-image-modal-head h2{margin:3px 0 0;color:#172033;font-size:20px}
.net360-image-modal-body{display:grid;place-items:center;padding:18px;background:#f6fafa;border:1px solid #dce8ea;border-radius:14px}
.net360-image-modal-body img{display:block;width:min(440px,100%);height:auto;max-height:68vh;object-fit:contain;background:#fff;border-radius:8px}
.net360-image-modal-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid #d7e3e5;border-radius:50%;background:#fff;color:#50656b;font-size:27px;line-height:1;cursor:pointer}
.net360-image-modal-close:hover{color:#087d82;border-color:#087d82;background:#eaf8f8}
@media(max-width:600px){.net360-image-modal{padding:12px}.net360-image-modal-dialog{padding:16px;border-radius:14px}.net360-image-modal-body{padding:10px}.net360-image-modal-body img{max-height:70vh}}

body.net360-modal-open{overflow:hidden}

/* 360 QR shape selector and optional centered-logo example */
.net360qr-logo-example{display:flex;align-items:center;gap:12px;max-width:440px;margin:10px 0;padding:12px;border:1px solid #d8e5e7;border-radius:10px;background:#f8fcfc;color:#263b40}.net360qr-example-code{width:66px;height:66px;flex:0 0 66px;display:grid;place-items:center;border:5px solid #172033;background-color:#fff;background-image:repeating-conic-gradient(#172033 0% 25%,#fff 0% 50%);background-size:12px 12px;position:relative;box-sizing:border-box}.net360qr-example-code:before{content:"";position:absolute;width:25px;height:25px;background:#fff;border:1px solid #d5dddd;border-radius:4px}.net360qr-example-code span{position:relative;z-index:1;font-size:8px;font-weight:900;color:#087d82;background:#fff;padding:2px}.net360qr-logo-example small{display:block;color:#667085;font-weight:400;margin-top:3px}.net360qr-logo-option input[type=file]{display:block;margin-top:9px}.net360-form-grid select{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px 13px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:#172033}

/* 1.0.5 — visual picker for QR shapes */
.net360qr-shape-field>strong{display:block;margin-bottom:10px;font-size:13px;color:#172033}
.net360qr-shape-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}
.net360qr-shape-card{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:12px;border:1px solid #d8e5e7;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;box-sizing:border-box}
.net360qr-shape-card:hover{border-color:#07858a;box-shadow:0 3px 12px rgba(8,125,130,.09)}
.net360qr-shape-card.is-selected{border:2px solid #07858a;padding:11px;background:#f0fbfb;box-shadow:0 0 0 2px rgba(8,125,130,.08)}
.net360qr-shape-card input[type=radio]{align-self:flex-start;width:16px;height:16px;margin:0;accent-color:#07858a}
.net360qr-shape-preview{display:block;width:100%;max-width:164px;line-height:0;margin:2px auto 6px}
.net360qr-shape-preview svg{display:block;width:100%;height:auto}
.net360qr-shape-name{display:block;width:100%;font-size:13px;font-weight:750;color:#172033;text-align:center;line-height:1.35}
.net360qr-shape-description{display:block;width:100%;font-size:11px;font-weight:400;color:#667085;text-align:center;line-height:1.45}
.net360qr-shape-note{margin:8px 0 0;font-size:12px;color:#667085}
@media(max-width:680px){.net360qr-shape-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.net360qr-shape-picker{grid-template-columns:1fr}}
.net360qr-shape-card:has(input[type=radio]:checked){border:2px solid #07858a;padding:11px;background:#f0fbfb;box-shadow:0 0 0 2px rgba(8,125,130,.08)}

.net360qr-shape-card:focus-within{outline:3px solid rgba(8,125,130,.28);outline-offset:2px}.net360qr-shape-card input[type=radio]{cursor:pointer;flex:0 0 auto}.net360qr-shape-card.is-selected .net360qr-shape-name:after{content:" · Selected";color:#087d82;font-size:11px;font-weight:800}

.net360-download-menu-front .net360-download-options{right:auto;left:0;top:calc(100% + 5px);min-width:220px;text-align:left}
.net360-download-menu-front>summary{font:inherit}

/* Keep download options visible when the frontend is inside an overflow container. */
.net360-download-options.is-fixed{position:fixed!important;top:0;left:0;right:auto;z-index:100000;max-width:calc(100vw - 24px);box-sizing:border-box}
