.ruta-nnl{--gold:#e9c17d;--green:#73a637;--ink:#091411;background:#0a1414;color:#f7f5ef;font-family:Montserrat,Arial,sans-serif;line-height:1.5}.ruta-nnl *{box-sizing:border-box}.ruta-nnl button,.ruta-nnl input{font:inherit}.ruta-nnl h1,.ruta-nnl h2,.ruta-nnl h3{color:#fff;line-height:1.12;margin:14px 0}.ruta-nnl h1{font-size:clamp(34px,5vw,72px);font-weight:900;max-width:1000px}.ruta-nnl h2{font-size:clamp(28px,3.5vw,46px)}.ruta-nnl h3{font-size:30px}.ruta-inner{max-width:1200px;margin:auto;padding:80px 24px;text-align:center}.ruta-hero{min-height:550px;display:grid;place-items:center;text-align:center;padding:70px 22px;background:radial-gradient(ellipse at 65% 15%,#2b423a 0,transparent 55%),linear-gradient(135deg,#0a1414,#12231d 60%,#060c0b)}.ruta-hero-inner{max-width:1050px}.ruta-hero p{font-size:clamp(17px,2vw,22px);max-width:750px;margin:20px auto 32px}.ruta-eyebrow{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:2.4px}.ruta-primary{display:inline-block;background:var(--green);border:0;color:white!important;padding:16px 27px;border-radius:10px;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 10px 25px #0007}.ruta-primary:hover{filter:brightness(1.13)}.ruta-sub,.ruta-small{font-size:12px;color:#b6c6bf;margin-top:14px}.ruta-muted{color:#c5d1c9}.ruta-maker{background:linear-gradient(#101e1b,#0a1211)}.ruta-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:30px auto}.ruta-tabs button{background:#192d28;border:1px solid #496052;color:#e8eee9;padding:10px 17px;border-radius:99px;cursor:pointer}.ruta-tabs button.active{background:var(--green);color:white;border-color:var(--green)}.ruta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px;max-width:1050px;margin:0 auto 40px}.ruta-card{background:#14231f;border:1px solid #334d41;border-radius:13px;padding:12px;color:#f6f5ee;cursor:pointer;text-align:center;min-width:0}.ruta-card.active{outline:2px solid var(--gold)}.ruta-card img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px}.ruta-card span{display:block;font-size:12px;margin-top:7px}.ruta-editor{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px;max-width:1040px;margin:0 auto;padding:26px;background:#0a1513;border:1px solid #3c574a;border-radius:18px;text-align:left}.ruta-preview canvas{width:100%;height:auto;border-radius:12px;background:#07100d}.ruta-form label{display:block;font-weight:700;margin:22px 0 7px}.ruta-form input{width:100%;padding:14px 16px;border-radius:8px;border:1px solid #728778;background:#f9fbf8;color:#12241c;font-size:21px}.ruta-form .ruta-primary{margin-top:24px;width:100%}.ruta-story{text-align:center;background:radial-gradient(circle at top,#2d3326,#0b1412 60%)}.ruta-story p{max-width:780px;margin:18px auto 32px}.ruta-map img{width:100%;max-width:1050px;border:1px solid #67583c;border-radius:15px;box-shadow:0 20px 60px #0008}.ruta-foot{text-align:center;padding:30px 20px;background:#080f0d;font-size:13px}.ruta-foot small{display:block;color:#9eaaa2;font-size:10px;max-width:900px;margin:12px auto}.ruta-nnl #ruta-music{position:fixed;bottom:22px;right:20px;z-index:1000;background:#172720;color:white;border:1px solid #a98c53;border-radius:99px;padding:10px 17px;cursor:pointer;box-shadow:0 6px 20px #0008}@media(max-width:720px){.ruta-inner{padding:55px 16px}.ruta-editor{grid-template-columns:1fr;padding:16px;gap:18px}.ruta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ruta-hero{min-height:440px}.ruta-tabs button{font-size:12px}.ruta-nnl #ruta-music{bottom:12px;right:12px}}

.ruta-card .ruta-thumb{width:100%;aspect-ratio:1;height:auto;display:block;border-radius:8px;background:#0b1714}.ruta-nnl #ruta-canvas{display:block}

/* Señores del Oro: presentación contenida, sin afectar otras colecciones. */
.ruta-nnl .ruta-grid[data-category="sipan"]{grid-template-columns:minmax(0,650px);justify-content:center;}
.ruta-nnl .ruta-grid[data-category="sipan"] .ruta-card{width:100%;}

/* Beneficios exclusivos, sin clasificaciones visibles */
.nnl-secret-section{padding:70px 20px;background:linear-gradient(145deg,#090f0c,#17170f);text-align:center;color:#f5e7c7}.nnl-secret-section h2{color:#e7c17b}.nnl-secret-locks{display:flex;gap:14px;justify-content:center;margin:30px auto}.nnl-secret-locks span{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:125px;border:1px solid #8b713e;border-radius:14px;font-size:42px;color:#e6c784;background:#20231e}.nnl-secret-locks small{font-size:10px;letter-spacing:1px}.nnl-legend-offer{max-width:700px;margin:35px auto;padding:30px;border:1px solid #8b713e;border-radius:18px;background:#0d1411}.nnl-legend-offer p{line-height:1.6}.nnl-unlock-form{max-width:570px;margin:25px auto;color:#f4e6cb}.nnl-unlock-form label{display:block;margin-bottom:12px}.nnl-unlock-fields{display:flex;gap:8px}.nnl-unlock-fields input{flex:1;min-width:0;padding:14px;border-radius:8px;background:#fff;color:#111}.nnl-unlock-fields button{padding:12px 18px;border:0;border-radius:8px;background:#73a637;color:white;font-weight:700;cursor:pointer}.nnl-secret-open{padding:18px;border:1px solid #73a637;border-radius:10px}@media(max-width:500px){.nnl-secret-locks span{width:30%;height:100px}.nnl-unlock-fields{flex-direction:column}}
/* v0.4.0: premium offers and independent access, scoped to Ruta NNL */
.ruta-nnl .nnl-premium-inner,.ruta-nnl .nnl-legend-inner{max-width:1150px}
.ruta-nnl .nnl-secret-section{padding:0;background:radial-gradient(ellipse at 50% 0,#3a2e19,#0a100e 65%)}
.ruta-nnl .nnl-secret-locks span{width:150px;height:128px;background:linear-gradient(145deg,#282b24,#101612);box-shadow:inset 0 1px #e7c67d33}
.ruta-nnl .nnl-secret-locks small{font-size:12px;font-weight:800}
.ruta-nnl .nnl-key-panel{max-width:650px;margin:22px auto 0;padding:22px;border:1px solid #a68c53;border-radius:16px;background:#141c17;box-shadow:0 18px 35px #0006}
.ruta-nnl .nnl-key-panel h3,.ruta-nnl .nnl-legend-key h3,.ruta-nnl .nnl-legend-buy h3{color:#efd39a;font-size:23px;margin:0 0 12px}
.ruta-nnl .nnl-key-panel p{color:#e6e0d1}
.ruta-nnl .nnl-unlock-form{margin:16px auto 0}.ruta-nnl .nnl-unlock-form label{font-weight:700}
.ruta-nnl .nnl-unlock-fields input{border:1px solid #a18a59}.ruta-nnl .nnl-unlock-fields button{min-width:210px;font-weight:900}
.ruta-nnl .nnl-benefit-note{margin:20px auto;color:#d5c7aa}
.ruta-nnl .nnl-secret-open{max-width:620px;margin:20px auto;background:#172c1b;color:#ecf5e4}
.ruta-nnl .nnl-jump{display:block;margin:12px auto 0;padding:11px 19px;border:0;border-radius:8px;background:#73a637;color:#fff;font-weight:800;cursor:pointer}
.ruta-nnl .nnl-legend-section{background:radial-gradient(ellipse at 50% 0,#44361e,#101713 48%,#070b09)}
.ruta-nnl .nnl-legend-section h2{color:#f2d49c;font-family:Georgia,serif;font-size:clamp(32px,5vw,60px);letter-spacing:.02em}
.ruta-nnl .nnl-legend-intro{max-width:780px;margin:18px auto 32px;font-size:18px;color:#e8e0cf}
.ruta-nnl .nnl-character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ruta-nnl .nnl-character{min-width:0;cursor:pointer;background:linear-gradient(#29261e,#111814);padding:8px 8px 15px;border:1px solid #a28a55;border-radius:13px;color:#efd8a8;box-shadow:0 8px 26px #0008;transition:transform .2s,border-color .2s}
.ruta-nnl .nnl-character:hover,.ruta-nnl .nnl-character:focus-visible{transform:translateY(-3px);border-color:#f2d79d;outline:2px solid #c4a66c}
.ruta-nnl .nnl-character-art{position:relative;display:block;overflow:hidden;border-radius:8px;background:#1d1a15}
.ruta-nnl .nnl-character-art img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.ruta-nnl .nnl-character-signature{position:absolute;bottom:5px;left:6px;font-size:8px;letter-spacing:.05em;color:#b9aa8a99;text-shadow:0 1px 3px #0009;pointer-events:none}
.ruta-nnl .nnl-character-signature i{font-size:6px;font-style:normal}
.ruta-nnl .nnl-character-name{display:block;padding:12px 3px 0;font-family:Georgia,serif;font-size:clamp(13px,1.4vw,19px);font-weight:700}
.ruta-nnl .nnl-character-hint{color:#bfb8a9;font-size:13px;margin:16px auto 34px}
.ruta-nnl .nnl-legend-actions{display:grid;grid-template-columns:1fr 1fr;gap:22px;text-align:left}
.ruta-nnl .nnl-legend-buy,.ruta-nnl .nnl-legend-key{padding:28px;border:1px solid #806a43;border-radius:17px;background:#111a15}
.ruta-nnl .nnl-legend-actions p{color:#d9d9cb;line-height:1.65}
.ruta-nnl .nnl-legend-unlock label{display:block;font-weight:700;margin:12px 0 7px}
.ruta-nnl .nnl-legend-unlock input{width:100%;padding:14px;background:#fff;border:1px solid #b5a37d;border-radius:9px;color:#182119}
.ruta-nnl .nnl-legend-submit{display:block;width:100%;margin-top:12px;padding:15px;border:0;border-radius:9px;background:#73a637;color:white;font-weight:900;cursor:pointer}
.ruta-nnl .nnl-form-error{color:#ffc6b9;font-weight:700}
.nnl-character-dialog{position:fixed;inset:0;margin:auto;max-width:min(90vw,600px);max-height:90vh;padding:20px;background:#0c1510;color:#f1d8a3;border:1px solid #b39a62;border-radius:15px;text-align:center;box-shadow:0 20px 100px #000b}
.nnl-character-dialog::backdrop{background:#000c}.nnl-character-dialog img{display:block;max-width:100%;max-height:70vh;margin:auto;border-radius:8px}.nnl-character-dialog p{font:700 20px Georgia,serif}
.nnl-character-dialog .nnl-dialog-close{position:absolute;right:8px;top:8px;border:1px solid #d5bd83;border-radius:50%;width:38px;height:38px;background:#111a15;color:#fff;cursor:pointer}
@media(max-width:760px){.ruta-nnl .nnl-character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ruta-nnl .nnl-legend-actions{grid-template-columns:1fr}.ruta-nnl .nnl-secret-locks span{width:31%;height:110px}.ruta-nnl .nnl-key-panel,.ruta-nnl .nnl-legend-buy,.ruta-nnl .nnl-legend-key{padding:18px}.ruta-nnl .nnl-character-signature i{display:none}}

/* v0.4.3: nombres premium en las tres etapas; sin modificar los iconos. */
.ruta-nnl .nnl-secret-locks small{max-width:100%;font-size:11px;letter-spacing:.55px;line-height:1.35;padding:0 5px;text-wrap:balance}

/* Aviso visible de acceso Leyenda */
.nnl-legend-error-visible{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding:16px 18px;border:2px solid #e6b75b;border-radius:10px;background:#302316;color:#fff4d8;font-size:15px;line-height:1.5;scroll-margin-top:110px;box-shadow:0 4px 18px rgba(0,0,0,.22)}
.nnl-legend-error-visible strong{color:#ffdf93;font-size:17px}.nnl-legend-error-visible span{display:block}
