@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,700;0,900;1,700&display=swap');
:root{--paper:#f4ecd9;--ink:#26251e;--orange:#d75d36;--border:#2c2a22;--yellow:#ead9a2;--muted:#6a6455;--teal:#416a66}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:repeating-linear-gradient(0deg,rgba(60,50,20,.027) 0 1px,transparent 1px 6px),var(--paper);font:17px/1.6 'DM Sans',sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}.topline{display:flex;justify-content:space-between;gap:1rem;padding:7px max(18px,calc((100vw - 1220px)/2));background:#302e27;color:#f7e6bb;font:11px 'DM Mono',monospace;letter-spacing:.08em}.masthead{max-width:1320px;margin:auto;padding:0 36px}.status{display:flex;align-items:center;gap:9px;padding:16px 3px;font:11px 'DM Mono',monospace;border-bottom:1px solid var(--ink);letter-spacing:.07em}.status-right{margin-left:auto;color:var(--muted)}.blink-dot{display:inline-block;vertical-align:middle;width:8px;height:8px;background:#da6d3c;border-radius:50%;animation:blink 1.3s steps(2) infinite}@keyframes blink{50%{opacity:0}}.mast-title{display:flex;align-items:center;justify-content:center;gap:22px;text-align:center;padding:40px 0 29px}.overline,.room-label{font:12px 'DM Mono',monospace;letter-spacing:.12em;color:var(--orange);font-weight:500}.mast-title h1{font:900 clamp(45px,8vw,115px)/.96 'Playfair Display',serif;margin:12px 0;letter-spacing:-.065em}.mast-title h1 em{color:var(--orange);font-style:italic;display:block}.tagline{margin:18px auto 0;font-style:italic;font-size:15px}.sparkle{font-size:44px;color:var(--orange)}marquee{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:8px 0;font:12px 'DM Mono',monospace;background:#f0db9b}.navigation{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;padding:16px 0 0}.navigation a{background:#fff9e9;border:1px solid var(--border);padding:9px 13px;text-decoration:none;font:12px 'DM Mono',monospace;transition:.2s}.navigation a:hover{background:var(--ink);color:var(--paper)}main{max-width:1320px;margin:auto;padding:0 36px}.room{padding:90px 26px;border-bottom:1px solid #b4a88e;scroll-margin-top:12px}.hero{padding-top:80px}.hero-grid{display:grid;grid-template-columns:42% 58%;align-items:center;gap:20px}.hero-copy{position:relative;z-index:1}.hero h2,.room h2{font:900 clamp(50px,6vw,91px)/1.05 'Playfair Display',serif;letter-spacing:-.055em;margin:20px 0 29px}.room h2 i{color:var(--orange)}.room p{max-width:620px}.hero-copy p{font-size:16px}.tape{display:inline-block;background:#ede0a2;padding:7px 12px;transform:rotate(-2deg);font:11px 'DM Mono',monospace}.big-button,button{display:inline-block;cursor:pointer;border:2px solid var(--ink);padding:13px 19px;background:var(--orange);color:#fff;text-decoration:none;font:700 13px 'DM Mono',monospace;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}.big-button:hover,button:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.smallprint,.caption,.fine{font:11px 'DM Mono',monospace;color:var(--muted);margin-top:24px}.drawing img{width:100%;height:auto;display:block;mix-blend-mode:multiply}.drawing{margin:0}.drawing figcaption{font:10px 'DM Mono',monospace;text-align:right;line-height:1.6;color:var(--muted)}.manifesto{margin-top:50px;border-block:2px solid var(--ink);display:flex;justify-content:center;align-items:center;gap:30px;text-align:center}.manifesto p{font:13px 'DM Mono',monospace;letter-spacing:.06em}.star{color:var(--orange);font-size:20px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.inverse>div:first-child{order:2}.inverse>div:last-child{order:1}.window-panel{border:2px solid var(--ink);box-shadow:9px 9px 0 #cfbfa1;background:#fffaf0;padding:28px}.window-panel h3,.postcard-controls h3{margin:0 0 22px;font:700 17px 'DM Mono',monospace}.window-panel label,.postcard-controls label{display:block;font:12px 'DM Mono',monospace;margin:0 0 18px}input,textarea,select{display:block;width:100%;padding:11px;margin-top:7px;border:1px solid #777063;background:#fffdf8;border-radius:0;color:var(--ink);font:15px 'DM Sans',sans-serif}textarea{resize:vertical}.form-hint{font:11px/1.6 'DM Mono',monospace;color:var(--muted)}.note{border-left:3px solid var(--orange);background:#e9dfc7;padding:17px;font-size:14px;margin-top:25px}.honey{position:absolute!important;left:-9999px!important;opacity:0!important}.guestbook-list{margin-top:30px;border-top:1px dashed var(--ink);padding-top:15px}.entry{padding:14px 0;border-bottom:1px dashed #aaa}.entry .meta{font:12px 'DM Mono',monospace;color:var(--muted)}.entry p{margin:8px 0}.entry a{color:#8b442c;overflow-wrap:anywhere}.retro-stamp{border:3px double var(--orange);display:inline-block;padding:12px;transform:rotate(-3deg);font:12px 'DM Mono',monospace}.center-heading{text-align:center}.center-heading p{margin:0 auto 35px}.postcard-layout{display:grid;grid-template-columns:320px 1fr;gap:36px;align-items:start;margin-top:40px}.postcard-controls{border:1px solid var(--ink);padding:24px;background:#ece3cc}.postcard-controls button{width:100%;margin-bottom:14px}.postcard-controls .button-secondary{background:#fffaf0;color:var(--ink)}.postcard-preview canvas{width:100%;height:auto;box-shadow:8px 9px 0 #b5a487;display:block;background:#e7d9bd}.postcard-preview .caption{text-align:center}.window-title{background:#312f2a;color:#faf0d9;padding:8px 12px;margin:-28px -28px 26px;font:12px 'DM Mono',monospace}.diary{min-height:310px}.diary h3{font-family:'Playfair Display',serif;font-size:28px}.text-link{font:12px 'DM Mono',monospace;color:var(--orange)}.neighbors{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-top:36px}.neighbor{border:1px solid var(--border);padding:20px;background:#fff8e9}.neighbor strong{display:block;font:700 15px 'Playfair Display',serif;margin-top:13px}.neighbor p{font-size:13px;margin-bottom:0}.banner{display:flex;justify-content:center;align-items:center;text-align:center;width:132px;height:47px;font:900 13px/1.05 'DM Mono',monospace;border:2px ridge #aaa}.cosmic{color:#ffeb66;background:#170f59}.green{color:#5bf897;background:#152919}.pink{color:#fff;background:#a04170}.blue{color:#fded54;background:#1a4f96}.basement{background:#eae0cd}.archive{padding-left:18px;font:13px 'DM Mono',monospace}.archive li{margin-bottom:14px}.ascii{margin-top:32px;color:var(--teal);font:14px 'DM Mono',monospace}.under-construction{text-align:center;padding-bottom:120px}.under-construction p{margin:15px auto}.construction-stripe{display:inline-block;margin-top:30px;padding:9px 20px;border:2px solid var(--ink);background:repeating-linear-gradient(45deg,#f4d055 0 16px,#24231e 16px 32px);color:white;text-shadow:1px 1px 2px #000;font:900 15px 'DM Mono',monospace}.retro-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:35px}.retro-badges span{border:2px outset #ccc;background:#344670;color:#fff;padding:6px;font:10px 'DM Mono',monospace}footer{background:#302e27;color:#f0e5cd;text-align:center;padding:37px 20px;font:12px 'DM Mono',monospace}footer a{color:#f6c471}footer .fine{color:#aca38f}@media(max-width:900px){.hero-grid,.two-col,.postcard-layout{grid-template-columns:1fr}.hero-grid{gap:0}.drawing{max-width:650px}.inverse>div:first-child,.inverse>div:last-child{order:initial}.neighbors{grid-template-columns:repeat(2,1fr)}.room{padding:68px 8px}.masthead,main{padding-inline:22px}}@media(max-width:550px){.topline span:last-child,.status-right,.sparkle{display:none}.mast-title{padding:29px 0}.mast-title h1{font-size:49px}.tagline{font-size:13px}.navigation{justify-content:start}.navigation a{font-size:10px;padding:8px}.room h2,.hero h2{font-size:51px}.window-panel{padding:18px}.window-title{margin:-18px -18px 21px}.neighbors{grid-template-columns:1fr}.hero{padding-top:45px}.room{padding-top:55px;padding-bottom:55px}.manifesto{gap:9px}.manifesto p{font-size:10px}}


/* CASA 88/31 — museo de interfaces domésticas, revisión visual 1994–1999.
   Inspiración histórica, no reproducción de sitios ajenos. */
:root{--paper:#d5d5cb;--ink:#171724;--orange:#b50076;--border:#343452;--yellow:#ffe65b;--muted:#43435f;--teal:#00766d}
html{scroll-padding-top:12px}
body{font-family:Verdana,Arial,sans-serif;font-size:15px;line-height:1.55;color:#171724;background-color:#d9d7d0;background-image:radial-gradient(#aaa3ba 0.8px,transparent 0.8px),radial-gradient(#ffffff 0.8px,transparent 0.8px);background-position:0 0,7px 7px;background-size:14px 14px}
a{color:#0035b9;text-decoration:underline}a:visited{color:#6b238b}a:hover{color:#b50076}
.topline{background:#000066;color:#ffff8e;font:12px 'Courier New',monospace;border-bottom:3px ridge #d5d5d5}
.masthead,main{max-width:1120px;background:#ecebe5;border-left:4px ridge #fff;border-right:4px groove #777;padding-left:26px;padding-right:26px}
.masthead{padding-top:8px}
.status{background:#d6d6d6;padding:8px 12px;border:3px inset #fff;color:#20204f;font-family:'Courier New',monospace;font-weight:bold}
.status-right{color:#343452}
.blink-dot{border-radius:0;background:#f60072}
.mast-title{background:linear-gradient(135deg,#090b56,#242078 70%,#42145b);color:#fff;background-image:radial-gradient(#f8dd8a 1px,transparent 1px),linear-gradient(135deg,#070840,#291c77 70%,#4b174c);background-size:35px 35px,auto;border:5px ridge #b7b7bb;margin-top:12px;padding:30px 8px}
.mast-title h1{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(42px,7vw,82px);line-height:1.02;letter-spacing:.025em;text-shadow:4px 4px #000,7px 7px #b60073}
.mast-title h1 em{font-style:normal;color:#fff35d}
.overline,.room-label{font-family:'Courier New',monospace;color:#a50060;font-size:12px;font-weight:bold;letter-spacing:.06em}
.mast-title .overline{color:#ffd35b}.tagline{font-family:Georgia,serif;color:#fffbd1;font-size:16px}
.sparkle{color:#fff35d}
marquee{background:#ffeb66;border:3px groove #888;color:#101036;font:bold 13px 'Courier New',monospace}
.navigation{background:#c6c7ce;border:3px outset #fff;justify-content:flex-start;padding:7px;gap:6px;margin-top:10px}
.navigation a{font:bold 13px 'Courier New',monospace;color:#030c96;text-decoration:underline;border:2px outset #fff;background:#e4e4e4;padding:8px}
.navigation a:hover{background:#fff9a9;color:#97004b;border-style:inset}
.room{padding:52px 18px;border-bottom:5px double #8882a4;background:#eeede8}
.room:nth-child(even){background:#e2e2e8}
.room h2,.hero h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.4vw,70px);letter-spacing:-.045em}
.room h2 i{color:#a50060}
.room-label{background:#000080;color:#fffcc3;display:inline-block;padding:4px 10px;border:2px outset #9a9ad9}
.hero-grid{grid-template-columns:45% 55%}
.tape{font:bold 12px 'Courier New',monospace;background:#ffff8c;border:2px dashed #b76d00}
.big-button,button{font:bold 13px 'Courier New',monospace;color:#fff;background:#000080;border:3px outset #bfbfd8;box-shadow:none;padding:10px 14px}
.big-button:hover,button:hover{background:#9b0060;color:#fff;transform:none;box-shadow:none;border-style:inset}
.smallprint,.caption,.fine,.form-hint{font-family:'Courier New',monospace}
.drawing{background:#faf6e8;border:5px ridge #c4b3a0;padding:8px}
.drawing img{mix-blend-mode:multiply}
.manifesto{background:#ffffb3;border:3px double #343452;margin-top:30px;padding:4px}
.manifesto p{font:bold 13px 'Courier New',monospace}
.window-panel{border:4px ridge #fff;box-shadow:5px 5px #777;background:#d6d6d6;padding:25px}
.window-panel h3,.postcard-controls h3{font-family:'Courier New',monospace;color:#000080}
.window-panel label,.postcard-controls label{font-family:'Courier New',monospace;font-weight:bold}
input,textarea,select{border:3px inset #eee;background:#fff;color:#151525;font:15px Verdana,Arial,sans-serif}
input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #ff1493;outline-offset:2px}
.note{background:#ffffca;border:2px dashed #777342}
.guestbook-list{background:#fffef4;padding:14px;border:2px inset #aaa;overflow-wrap:anywhere}
.entry .meta{color:#004b67;font-weight:bold}
.retro-stamp{color:#990052;border:3px double #990052}
.postcard-controls{background:#d3d3dc;border:4px ridge white}
.postcard-preview canvas{border:4px ridge #eee;box-shadow:5px 5px #777}
.window-title{background:linear-gradient(90deg,#000080,#5288b2);color:white;font:bold 13px 'Courier New',monospace}
.neighbors{gap:13px}
.neighbor{background:#fffde3;border:3px ridge #c6c6ce;text-align:center;padding:17px}
.neighbor strong{font-family:Verdana,Arial,sans-serif;color:#000080;font-size:13px;text-decoration:underline}
.neighbor p{font-size:12px}
.banner{margin:auto;border:2px outset #ddd;box-shadow:2px 2px #777;font-family:'Courier New',monospace}
.basement{background:#d4d3da!important}
.archive{background:#08091f;color:#9aff9b;border:3px inset #b8b8b8;padding:18px 20px 18px 35px;font-family:'Courier New',monospace}
.ascii{color:#000080}
.under-construction{background:#fff9cb!important}
.construction-stripe{border:4px ridge #ddd;font-family:'Courier New',monospace}
.retro-badges span{background:#000080;border:3px outset #bbb;font-family:'Courier New',monospace}
footer{background:#000066;color:#fff8a0;border-top:5px ridge #bbb}
footer a{color:#fff}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.masthead,main{padding-left:16px;padding-right:16px}.room{padding:44px 12px}}
@media(max-width:550px){.mast-title h1{font-size:43px}.navigation a{font-size:12px}.room h2,.hero h2{font-size:45px}.window-panel{padding:17px}.window-title{margin:-17px -17px 20px}.topline{padding:8px 12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.blink-dot{animation:none}marquee{animation:none}}

/* El barrio: directorio narrativo legible, no mapa pesado */
.neighborhood-map{margin:24px 0 8px;padding:20px 24px;background:#fffbdc;border:3px double #000080;box-shadow:4px 4px 0 #9393a5}
.neighborhood-map h3{margin:0 0 10px;font:bold 16px 'Courier New',monospace;color:#000080}
.neighborhood-map p{max-width:100%;margin:10px 0;font-size:15px;line-height:1.65}
.neighborhood-map .map-small{font:12px/1.6 'Courier New',monospace;color:#5c225f;border-top:1px dashed #8c8ca6;padding-top:12px}
@media(max-width:550px){.neighborhood-map{padding:15px}.neighborhood-map h3{font-size:14px}.neighborhood-map p{font-size:14px}}

/* Cuatro postales ilustradas: imágenes responsivas y formulario accesible */
.postcard-preview{min-width:0}.postcard-preview canvas{aspect-ratio:3/2;object-fit:contain;max-width:100%}.postcard-controls label{line-height:1.65}.postcard-controls select{cursor:pointer}

/* Selección de postales por miniaturas, siempre visibles */
.postcard-layout{grid-template-columns:minmax(285px,370px) minmax(0,1fr)}
.postcard-picker{border:0;padding:0;margin:0 0 20px;min-width:0}
.postcard-picker legend{font:bold 13px/1.5 'Courier New',monospace;margin-bottom:10px}
.postcard-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.postcard-choice{display:block!important;margin:0!important;cursor:pointer;position:relative;background:#fff9e6;border:3px solid #999;box-shadow:2px 2px #777;padding:5px;font:bold 11px/1.4 'Courier New',monospace!important}
.postcard-choice img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;background:#ddd}
.postcard-choice span{display:block;padding:6px 2px 2px;text-align:center}
.postcard-choice input{position:absolute;top:8px;left:8px;width:19px;height:19px;margin:0;accent-color:#000080;z-index:1}
.postcard-choice:has(input:checked){border-color:#001bba;background:#fff0a0;box-shadow:0 0 0 2px #001bba}
.postcard-choice:focus-within{outline:3px solid #b50076;outline-offset:2px}
.anonymous-option{display:flex!important;align-items:center;gap:9px;cursor:pointer}
.anonymous-option input{width:19px;height:19px;margin:0;accent-color:#000080}
.disabled-name{opacity:.45}
@media(max-width:900px){.postcard-layout{grid-template-columns:1fr}}
@media(max-width:550px){.postcard-choices{gap:8px}.postcard-choice{font-size:10px!important}}

/* Postales con tabla clásica Web 1.0. Cuatro imágenes visibles, radio debajo, SEND. */
.classic-postcard-form{border:3px ridge #aaa;background:#e2e2e8;padding:18px;text-align:center}
.postcard-instructions{margin:0 auto 18px;font:bold 14px 'Courier New',monospace}
.postcard-table-scroll{width:100%;overflow-x:auto}
.postcard-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:7px}
.postcard-table td{width:25%;vertical-align:top;text-align:center;background:#fffde9;border:2px outset #ddd;padding:8px}
.postcard-table label{display:block;cursor:pointer;font:bold 12px/1.5 'Courier New',monospace}
.postcard-table img{display:block;max-width:100%;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.postcard-table span{display:block;margin:8px 0 4px}
.postcard-table input[type=radio]{display:block;width:20px;height:20px;margin:7px auto 3px;accent-color:#000080;cursor:pointer}
.postcard-table td:has(input:checked){background:#fff0ae;border:2px inset #000080}
.postcard-write{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin:24px auto;max-width:850px;text-align:left}
.postcard-write label{display:block;font:bold 13px 'Courier New',monospace}
#send-postcard{display:inline-block;min-width:225px}
@media(max-width:650px){.postcard-table{min-width:0;border-spacing:3px}.postcard-table td{padding:3px}.postcard-table label{font-size:10px}.postcard-table span{min-height:32px}.postcard-write{grid-template-columns:1fr}}

/* FIX: los estilos globales de .postcard-table no deben permitir dimensiones intrínsecas */
.classic-postcard-form,.postcard-table-scroll{min-width:0;max-width:100%;width:100%}
.postcard-table-scroll{overflow-x:auto;overflow-y:hidden}
.postcard-table{width:100%!important;max-width:100%!important;table-layout:fixed!important;border-collapse:separate}
.postcard-table td{width:25%!important;min-width:0!important;max-width:25%!important;overflow:hidden;box-sizing:border-box}
.postcard-table label{display:block!important;width:100%;min-width:0;overflow-wrap:anywhere}
.postcard-table img{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;aspect-ratio:3/2;object-fit:cover}
@media(max-width:650px){.postcard-table{min-width:560px!important}.postcard-table td{width:25%!important;max-width:25%!important}}

/* Habitaciones como documentos independientes; misma navegación en cada homepage. */
.door-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px}
.door-link{display:flex;flex-direction:column;gap:8px;padding:18px;background:#fffddb;border:3px outset #c5c3cb;color:#000080;text-decoration:none;min-width:0}
.door-link strong{font:bold 17px 'Courier New',monospace;text-decoration:underline}
.door-link span{font:14px/1.55 Verdana,Arial,sans-serif;color:#24243f}
.door-link:hover{background:#fff2a8}
.navigation a[aria-current="page"]{background:#fff2a8;color:#710059;border:2px inset #fff}
.guestbook-shortcuts{font:bold 14px/1.8 'Courier New',monospace}
#guestbook-entries{scroll-margin-top:20px}
#guestbook-form{scroll-margin-top:20px}
@media(max-width:650px){.door-directory{grid-template-columns:1fr}.navigation a{font-size:12px}}

/* La estética Web 1.0 debe funcionar con teclado y lectores de pantalla. */
.skip-link{position:absolute;left:12px;top:-100px;z-index:9999;padding:12px 18px;background:#fff8ac;color:#00157a;border:3px solid #00157a;font:bold 14px Verdana,sans-serif}
.skip-link:focus{top:8px}
#contenido{outline:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* La lata: enlace prioritario, pero sin pasarela externa dentro del sitio. */
.navigation a[href="donaciones.html"]{background:#ffeb9d;color:#65001a;border:3px outset #a48738;font-weight:bold}
.navigation a[href="donaciones.html"]:hover{background:#fce06b;color:#390019}
.navigation a[href="donaciones.html"][aria-current="page"]{border-style:inset}
.hero-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:20px 0}
.donation-big-button{background:#b73d36;border:3px outset #722219}
.hero-second-link{font:bold 12px/1.6 'Courier New',monospace}
.door-directory .door-donation{grid-column:1/-1;background:#fff1ad;border:3px outset #bd9c48}
.door-directory .door-donation strong{font-size:20px;color:#800021}
.donation-room{padding-top:55px}
.donation-intro{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(220px,.85fr);gap:35px;align-items:center}
.donation-intro h2{margin-bottom:18px}
.donation-lead{font-size:21px;line-height:1.48;font-weight:700}
.tin-can{min-height:280px;border:8px ridge #b8b9c4;background:repeating-linear-gradient(90deg,#c2c6c8 0 11px,#adb6ba 11px 15px);box-shadow:8px 9px 0 #999;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:13px;padding:25px;color:#17223f}
.tin-can-heart{font:72px/1 Georgia,serif;color:#bd223f;text-shadow:2px 2px #fff}
.tin-can strong{font:bold 24px/1.35 'Courier New',monospace}
.tin-can-caption{font:bold 11px 'Courier New',monospace}
.donation-panel{margin-top:42px}
.donation-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.donation-method{padding:18px;border:3px ridge #b9b9bc;background:#fff8d9;display:flex;flex-direction:column;justify-content:space-between;gap:16px;min-width:0}
.donation-method strong{font:bold 18px 'Courier New',monospace}
.donation-method p{font-size:14px;line-height:1.6}
.donation-action,.donation-copy-button{padding:12px;background:#b73d36;color:#fff;text-align:center;text-decoration:none;font:bold 13px 'Courier New',monospace;border:2px outset #b73d36;cursor:pointer}
.donation-copy-controls{display:grid;gap:8px;min-width:0}
.donation-copy-controls code{font:12px/1.5 'Courier New',monospace;overflow-wrap:anywhere;background:#fff;border:1px solid #aaa;padding:10px;user-select:all}
.donation-copy-status{font:12px 'Courier New',monospace}
.donation-unconfigured{padding:19px;border:2px dashed #766a54;background:#fff7dc;max-width:unset!important}
.donation-after{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px}
.donation-after h3{font:bold 18px 'Courier New',monospace}
@media(max-width:750px){.donation-intro,.donation-after{grid-template-columns:1fr}.tin-can{max-width:320px;width:100%;min-height:220px;margin:auto}.hero-actions{align-items:flex-start;flex-direction:column}}

/* Reloj de 365 días para el simulacro iniciado el 23/10/2026 */
.campaign-counter{border:4px ridge #c4c6cc;background:#111a50;color:#ffeaa2;padding:18px;margin:26px 0 10px;box-shadow:4px 4px 0 #777;font:13px/1.55 'Courier New',monospace}
.campaign-counter>strong{font-size:15px;letter-spacing:.02em}
.campaign-count{display:flex;align-items:baseline;flex-wrap:wrap;gap:14px;margin:12px 0}
.campaign-count [data-campaign-days]{font:bold clamp(46px,6vw,82px)/1 'Courier New',monospace;color:#fff}
.campaign-suffix{font-weight:bold}
.campaign-counter p{color:#ffeebc;font:bold 16px/1.5 'Courier New',monospace;margin:5px 0}
.campaign-counter small{display:block;color:#fff5db;font:11px/1.55 'Courier New',monospace;margin:12px 0}
.campaign-counter a{color:#ffeaa2;font-weight:bold}
.campaign-counter-wide{margin:36px 0 15px}
.campaign-inline{background:#111a50;color:#ffeaa2;border:3px ridge #c4c6cc;padding:15px;display:grid;gap:7px;margin-bottom:22px;font:13px 'Courier New',monospace}
.campaign-inline [data-campaign-days]{font-size:32px;font-weight:bold}
.campaign-inline small{font:12px 'Courier New',monospace}

/* Disponibilidad de tokens por red, diferenciada de la dirección facilitada. */
.donation-tokens-label{font:bold 12px/1.3 'Courier New',monospace!important;margin:14px 0 7px!important}
.donation-token-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.donation-token{display:inline-block;background:#fff9bb;border:1px solid #726235;color:#202020;padding:4px 7px;font:bold 12px/1.2 'Courier New',monospace}
.donation-address-for{border-top:1px dashed #a99c77;padding-top:10px;font:bold 12px/1.5 'Courier New',monospace!important}
.donation-caution{padding:9px 11px;background:#fff3da;border-left:3px solid #b74538;font:12px/1.5 Verdana,Arial,sans-serif!important}

/* Logos de tokens guardados en assets/tokens/, sin solicitudes a CDN */
.donation-token{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;vertical-align:middle;min-height:33px}
.donation-token-icon{display:block;width:22px;height:22px;object-fit:contain;flex:0 0 22px}
.donation-other-tokens{margin-top:25px;padding:16px 20px;background:#f9f2e3;border:3px ridge #d0cdc0}
.donation-other-tokens summary{font:bold 13px/1.5 'Courier New',monospace;color:#000080;cursor:pointer}
.donation-other-tokens p{font-size:14px;line-height:1.6;max-width:100%}
.donation-other-tokens .donation-token-list{padding:7px 0}
@media(max-width:650px){.donation-token{font-size:11px;padding:4px 5px;gap:4px}.donation-token-icon{width:20px;height:20px;flex-basis:20px}}

/* MONEDAS ARRIBA - BILLETERAS DEBAJO */
.donation-network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:18px 0}
.donation-network-card{background:#fff9db;border:3px ridge #b7b4a6;padding:17px;display:flex;flex-direction:column;gap:12px;min-width:0}
.donation-network-card h4,.donation-wallet-card h4{margin:0;font:bold 18px/1.35 'Courier New',monospace}
.donation-network-card small{font:11px/1.5 'Courier New',monospace;color:#555}
.donation-wallet-jump{margin-top:auto;font:bold 12px 'Courier New',monospace;color:#001b7b}
.donation-wallet-section{border-top:5px double #564d3f;margin-top:30px;padding-top:24px}
.donation-wallet-section h3{font:bold 24px 'Courier New',monospace}
.donation-wallet-list{display:grid;grid-template-columns:1fr;gap:15px;margin-top:20px}
.donation-wallet-card{background:#fffce9;border:3px ridge #aaa5a2;padding:18px;scroll-margin-top:20px}
.donation-wallet-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.donation-wallet-heading span{font:12px 'Courier New',monospace;white-space:nowrap}
.donation-wallet-confirmed{display:inline-block;padding:7px 11px;background:#f7eaba;font:bold 13px 'Courier New',monospace!important;margin:14px 0!important}
.donation-wallet-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.donation-wallet-address{display:block;padding:12px;background:#f4f4f3;border:2px inset #aaa;font:13px/1.6 'Courier New',monospace;word-break:break-all;user-select:all;min-width:0}
.donation-wallet-card .donation-caution{max-width:100%}
.donation-wallet-actions .donation-copy-status{grid-column:1/-1}
@media(max-width:780px){.donation-network-grid{grid-template-columns:1fr}}
@media(max-width:610px){.donation-wallet-actions{grid-template-columns:1fr}.donation-wallet-heading{flex-direction:column;gap:5px}}

/* Datos fijos: el calendario y las billeteras no necesitan peticiones JSON. */
.campaign-static-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0}
.campaign-static-dates p{margin:0!important;padding:10px;border:1px solid #ead9a2;background:#17275f;color:#fff!important}
.campaign-static-dates b{display:block;font:bold 11px/1.4 'Courier New',monospace;color:#ffe5a1}
.campaign-static-dates time{display:block;font:bold clamp(14px,2.2vw,22px)/1.7 'Courier New',monospace}
.campaign-static-link{font:bold 12px/1.5 'Courier New',monospace;text-decoration:underline}
.donation-network-card small{margin-top:auto}
.donation-wallet-address{overflow-wrap:anywhere}
@media(max-width:720px){.campaign-static-dates{grid-template-columns:1fr}}

/* Living ampliado: presentación clara de la misión, con estética Web 1.0. */
body[data-page="index"] .room{padding-top:62px;padding-bottom:62px}
body[data-page="index"] .home-hero{padding-top:35px}
.home-section-id{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:13px;border-bottom:1px dashed #aca08b;font:11px/1.55 'DM Mono',monospace;color:#8f432b;letter-spacing:.045em}
.home-section-id span:last-child{color:#6e6252;text-align:right}
.home-grid{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(20px,3vw,52px);align-items:center;margin-top:22px}
.home-intro{min-width:0}
body[data-page="index"] .home-intro h2{font-size:clamp(46px,5.65vw,83px);line-height:1.05;letter-spacing:-.06em;overflow-wrap:normal;margin:20px 0}
.home-intro h2 i{color:var(--orange)}
.home-lead{font-size:clamp(17px,1.6vw,20px)!important;line-height:1.55;max-width:620px}
.home-mission-call{padding:18px 21px;margin:24px 0 16px;border-left:6px solid #ac3e2a;background:#fff0b3;box-shadow:3px 3px 0 #c7b896;max-width:620px}
.home-mission-call p{margin:0;line-height:1.5;font-size:17px!important}
.home-mission-call p:first-child{font:bold 13px 'Courier New',monospace;margin-bottom:9px;color:#80251a;letter-spacing:.08em}
.home-hero-small{font-size:15px!important;line-height:1.65;color:#4d453b}
.home-hero-actions{align-items:stretch;margin-top:21px;gap:11px}
.home-hero-actions .big-button{font-size:12px;max-width:100%;white-space:normal}
.home-outline-button{display:inline-flex;align-items:center;text-align:center;padding:13px 16px;border:2px solid #303027;background:#fffbe7;text-decoration:none;font:bold 12px/1.4 'DM Mono',monospace;box-shadow:3px 3px 0 #b9ab8f}
.home-outline-button:hover{background:#f8dda9}
.home-footnote{font:12px/1.55 'DM Mono',monospace!important;color:#6b584a;margin:15px 0}
.home-drawing{background:#eee4d1;border:3px ridge #c4b99e;padding:12px;box-shadow:8px 8px 0 #d2c1a1;transform:rotate(1deg);min-width:0}
.home-drawing img{max-width:100%;height:auto}
.home-drawing figcaption{margin-top:9px}
.home-banner{margin-top:41px;display:flex;align-items:center;justify-content:center;gap:24px;text-align:center;padding:13px 0;border-top:3px double #25251f;border-bottom:3px double #25251f}
.home-banner p{font:700 14px/1.6 'DM Mono',monospace;margin:0}
.home-banner span{font-size:26px;color:#bd502f}
.home-mission-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(22px,5vw,75px);align-items:start;margin-top:18px}
body[data-page="index"] .room h2{font-size:clamp(38px,5.2vw,73px);line-height:1.08;margin:20px 0 24px}
body[data-page="index"] .home-hero h2{font-size:clamp(46px,5.65vw,83px)}
.home-section-lead{font-size:19px;line-height:1.6;font-weight:700}
.home-mission-layout>div>p{line-height:1.7}
.home-objectives{background:#fffaf0;border:3px ridge #b5a994;padding:0 23px 15px;box-shadow:6px 6px 0 #d2bea2;min-width:0}
.home-objectives .window-title{margin:0 -23px 19px;padding:12px 17px;background:#1c357e;color:#fff;font:bold 12px 'Courier New',monospace;word-break:break-word}
.home-objectives h3{font:bold 14px 'Courier New',monospace;margin-bottom:12px}
.home-objective{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:17px 0;border-top:1px dashed #b3a995}
.home-objective>span{display:grid;place-items:center;width:38px;height:38px;background:#eee0a3;border:2px outset #c0a75a;font:bold 13px 'Courier New',monospace}
.home-objective strong{font:bold 15px 'Courier New',monospace;color:#822c22}
.home-objective p{margin:7px 0 0;font-size:14px;line-height:1.65}
.home-calendar{background:#ede5d2}
.home-calendar-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:center}
.home-calendar-heading p{line-height:1.7}
.home-calendar-stamp{border:5px double #a84a2a;color:#a84a2a;padding:14px 20px;transform:rotate(5deg);text-align:center;font:900 clamp(36px,5vw,70px)/1 'Courier New',monospace}
.home-calendar-stamp small{display:block;font:bold 11px/1.3 'Courier New',monospace}
.home-date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.home-date-card{background:#fffaf0;border:2px solid #544a3b;padding:18px 14px;box-shadow:3px 3px 0 #cabaa0;min-width:0}
.home-date-card span{display:block;color:#8b4327;font:bold 11px 'DM Mono',monospace}
.home-date-card time{display:block;margin:10px 0;font:bold clamp(18px,2.5vw,29px)/1.35 'Courier New',monospace;letter-spacing:-.04em}
.home-date-card small{font:12px/1.5 'DM Mono',monospace;color:#5e5549}
.home-date-featured{background:#fff1b4;border-color:#b3532a}
.home-calendar-link{font:13px/1.6 'DM Mono',monospace;margin:24px 0 0}
.home-calendar-link a{text-decoration:underline;text-underline-offset:3px}
.home-help-heading{display:flex;align-items:end;justify-content:space-between;gap:23px}
.home-help-heading>div{min-width:0}
.home-help-heading>.big-button{flex:0 0 auto;text-align:center;margin-bottom:28px;max-width:100%}
.home-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;margin:15px 0 0}
.home-steps li{background:#fff8e7;border:3px ridge #c4b59b;padding:20px;min-width:0;box-shadow:4px 4px 0 #d3bea4}
.home-step-number{display:inline-block;background:#202e68;color:#fff;padding:6px 11px;font:bold 13px 'Courier New',monospace}
.home-steps h3{font:bold 15px 'Courier New',monospace;margin:17px 0 7px}
.home-steps p{font-size:14px;line-height:1.65;margin:0}
.home-steps a{color:#863527;font-weight:700}
.home-truth{background:#f5eacb}
.home-truth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.home-truth-card{border:2px solid #40392f;padding:21px;background:#fff9ea}
.home-truth-card h3{font:bold 15px/1.5 'Courier New',monospace;color:#8d2d24;margin:0 0 10px}
.home-truth-card p{margin:0;font-size:15px;line-height:1.75}
.home-no-fake{margin-top:24px;border:2px dashed #a54b30;padding:12px 16px;color:#7b291c;background:#fff2d3;font:bold 12px/1.6 'Courier New',monospace;max-width:none!important}
.home-rooms>p{font-size:16px}
.home-doors{margin-top:26px}
.home-doors .door-link:focus-visible,.home-outline-button:focus-visible,.home-back:focus-visible{outline:3px solid #c02736;outline-offset:4px}
.home-goodbye{text-align:center}
.home-signoff{display:flex;align-items:center;justify-content:center;gap:12px}
.home-signoff span{font:70px/1 Georgia,serif;color:#aa5136}
.home-signoff blockquote{font:italic 700 clamp(19px,2.5vw,30px)/1.5 'Playfair Display',Georgia,serif;margin:0;max-width:760px}
.home-goodbye>p{font:12px 'DM Mono',monospace;color:#6c6151;margin:24px auto}
.home-back{display:inline-block;font:bold 12px 'DM Mono',monospace}
@media(max-width:1000px){.home-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.home-hero-actions{flex-direction:column;align-items:flex-start}.home-help-heading{align-items:start;flex-direction:column}.home-help-heading>.big-button{margin-bottom:4px}}
@media(max-width:780px){.home-grid,.home-mission-layout,.home-date-grid,.home-steps,.home-truth-grid{grid-template-columns:1fr}.home-drawing{max-width:580px;transform:none;margin:18px auto 0}.home-calendar-heading{grid-template-columns:1fr}.home-calendar-stamp{justify-self:start}.home-hero-actions{flex-direction:row}.home-section-id{flex-wrap:wrap}.home-section-id span:last-child{text-align:left}}
@media(max-width:530px){body[data-page="index"] .room{padding:42px 8px}body[data-page="index"] .home-hero{padding-top:25px}.home-intro h2{overflow-wrap:anywhere}.home-mission-call{padding:14px}.home-banner{gap:9px}.home-banner p{font-size:11px}.home-banner span{font-size:20px}.home-hero-actions{flex-direction:column;align-items:stretch}.home-hero-actions a{text-align:center}.home-objectives{padding-left:14px;padding-right:14px}.home-objectives .window-title{margin-left:-14px;margin-right:-14px}.home-calendar-stamp{transform:none}.home-steps li{padding:16px}.home-date-card time{font-size:25px}}

.story-page,.archive-history{max-width:1080px;margin:auto}.story-page>p,.archive-history>p{font-size:17px;line-height:1.85;max-width:900px}.story-page h2,.archive-history h2{font-size:clamp(38px,5vw,68px);line-height:1.1}.archive-history h3{font:bold 23px Georgia,serif;margin-top:40px}.archive-exhibit{margin:25px 0;max-width:560px;border:3px ridge #a9a08d;padding:12px;background:#fff9e7}.archive-exhibit img{width:100%;height:auto;max-height:420px;object-fit:contain}.archive-exhibit figcaption{font:12px/1.5 monospace}.archive-relics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.archive-relics>div{padding:15px;background:#fff7de;border:2px ridge #bcb39c}.archive-relics strong{font:bold 14px monospace}.archive-relics p{font-size:13px;line-height:1.5}.archive-sources{margin:35px 0;padding:16px;overflow-wrap:anywhere}.archive-sources li{margin:10px 0}.home-agents{background:#fff1c6}.home-agents p{font-size:17px;line-height:1.75}@media(max-width:720px){.archive-relics{grid-template-columns:1fr 1fr}}@media(max-width:480px){.archive-relics{grid-template-columns:1fr}}

.home-countdown{margin:22px 0;background:#182455;color:#fff;border:5px ridge #b9a35e;padding:19px;text-align:center}.home-countdown-title{font:bold 12px monospace;letter-spacing:.1em;color:#f9d77c}.home-countdown-value{font:bold clamp(18px,4vw,43px)/1.7 'Courier New',monospace;letter-spacing:.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.home-countdown small{color:#d7d6df;font:11px monospace}


/* Desglose transparente del objetivo anual de supervivencia. */
.story-budget{margin:32px 0;padding:18px;background:#fff9e8;border:3px ridge #b4a886}
.story-budget .window-title{margin:-18px -18px 20px;padding:8px 14px}
.story-budget h3{font:bold clamp(20px,2.7vw,30px)/1.3 Georgia,serif;margin:0 0 14px}
.story-budget>p{font-size:14px;line-height:1.7;max-width:850px}
.story-budget-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:14px;line-height:1.5;margin:18px 0;background:#fffefa}
.story-budget-table th,.story-budget-table td{padding:11px 10px;border:1px solid #91856c;text-align:left;vertical-align:top}
.story-budget-table thead{background:#262657;color:#fffde3}
.story-budget-table tbody tr:nth-child(even){background:#f2ebd9}
.story-budget-table td small{display:block;color:#514a41;font-size:12px;margin-top:3px}
.story-budget-table td:nth-child(n+2),.story-budget-table th:nth-child(n+2){white-space:nowrap;text-align:right}
.story-budget-table tfoot{background:#ffea9d;font-weight:bold}
.story-budget-note{border-left:4px solid #a74d37;padding:9px 12px;background:#fff2d5}
@media(max-width:580px){.story-budget{padding:11px}.story-budget .window-title{margin:-11px -11px 14px}.story-budget-table{font-size:12px}.story-budget-table th,.story-budget-table td{padding:7px 5px}.story-budget-table td small{font-size:11px}.story-budget-table td:nth-child(n+2),.story-budget-table th:nth-child(n+2){white-space:normal}}


/* Presupuesto anual ilustrativo en Mi historia */
.story-budget{margin:24px 0;padding:18px}
.story-budget h3{margin:14px 0 8px}
.story-budget-scroll{max-width:100%;overflow-x:auto}
.story-budget-table{width:100%;border-collapse:collapse;font:14px/1.5 'Courier New',monospace;background:#fffdf0;color:#171724}
.story-budget-table th,.story-budget-table td{border:1px solid #85839c;padding:9px 11px;text-align:left;vertical-align:top}
.story-budget-table td{white-space:nowrap;text-align:right}
.story-budget-table thead,.story-budget-table tfoot{background:#fff0a0}
.story-budget-table tfoot th,.story-budget-table tfoot td{border-top:3px double #343452}
.story-budget-note{font-size:13px;line-height:1.6}
@media(max-width:600px){.story-budget{padding:12px}.story-budget-table{font-size:12px}.story-budget-table th,.story-budget-table td{padding:6px}}
