:root{--paper:#FDFBF7;--ink:#5C4033;--terra:#8C6D53;--card:#F5EBE6;--line:#d9c9bb;--green:#dce8c8;--rose:#f5d6d6;--yellow:#faecc9;--blue:#d5e3f0;--muted:#776357;--shadow:3px 4px 0 #5c403324}*{box-sizing:border-box}body{margin:0;background-color:var(--paper);background-image:radial-gradient(#c9b9a43b .65px,transparent .65px);background-size:7px 7px;color:var(--ink);font-family:"Arial Narrow","Aptos Narrow","Roboto Condensed",Arial,sans-serif;font-stretch:condensed;font-size:16px;line-height:1.55}h1,h2,h3,h4,.typewriter,.brand{font-family:"Courier New",Courier,monospace;letter-spacing:-.055em;line-height:1.22}h1{font-size:clamp(2.4rem,4.8vw,4.1rem);margin:.45em 0;font-weight:700}h2{font-size:clamp(1.55rem,2.5vw,2rem);margin:0 0 .55em}h3{font-size:1.2rem;margin:.3em 0 .65em}p{margin:.5em 0 1em}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,.button{display:inline-flex;gap:.5em;align-items:center;justify-content:center;border:1px solid var(--terra);border-radius:6px;padding:.65em 1.1em;background:var(--terra);color:#fff;cursor:pointer;text-decoration:none;font-size:.9rem;font-weight:600;transition:background .18s,transform .18s;line-height:1.5}button:hover,.button:hover{background:var(--ink);border-color:var(--ink)}button:disabled{opacity:.55;cursor:wait}button.secondary,.button.secondary{background:var(--paper);color:var(--ink);border-color:var(--line)}button.secondary:hover,.button.secondary:hover{background:var(--card)}button.ghost,.button.ghost{border:0;background:transparent;color:var(--ink);padding:.6em .65em}button.ghost:hover{background:var(--card)}button.danger{background:#8d4d44;border-color:#8d4d44}.small{font-size:.8rem;padding:.4em .7em}.text-button{border:0;background:none;color:var(--ink);text-decoration:underline;padding:.3em .1em}.text-button:hover{background:none;color:var(--terra)}:focus-visible{outline:3px solid #a86b3d;outline-offset:4px}button:focus:not(:focus-visible){outline:none}img{max-width:100%;display:block}small,.muted{color:var(--muted)}.skip{position:absolute;left:1rem;top:-80px;z-index:99;background:var(--ink);color:white;padding:1rem}.skip:focus{top:1rem}.site-header{background:#fdfbf7f5;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.header-inner{max-width:1240px;margin:auto;min-height:91px;padding:15px 32px;display:flex;align-items:center;gap:35px}.brand{font-size:1.12rem;display:flex;align-items:center;gap:11px;text-decoration:none;font-weight:700;white-space:nowrap}.brand strong{display:block}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:.16em;margin-top:6px}.brand-mark{display:grid;place-items:center;width:46px;height:48px;font:37px Georgia;background:var(--green);border:1px solid var(--terra);border-radius:50% 50% 42% 42%;transform:rotate(-8deg)}nav{display:flex;gap:8px;flex:1;flex-wrap:wrap}nav a{font-size:.85rem;text-decoration:none;padding:8px 10px;border-bottom:2px solid transparent}nav a[aria-current="page"]{border-color:var(--terra);font-weight:700}.session-controls{display:flex;gap:10px;align-items:center}.session-name{max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.8rem}main{max-width:1190px;margin:auto;padding:0 30px 65px;min-height:68vh}main:focus{outline:none}.eyebrow{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--terra)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;padding:55px 0 52px;border-bottom:1px dashed var(--line)}.hero-copy{max-width:560px}.hero h1 em{font-style:normal;background:linear-gradient(transparent 62%,#e6d9b9 62%,#e6d9b9 93%,transparent 93%)}.hero p{max-width:440px;color:var(--muted);font-size:1.02rem}.hero-actions{display:flex;gap:12px;align-items:center;margin:27px 0 18px}.hero-note{font:italic 14px Georgia;color:var(--terra);display:block}.scrapbook{position:relative;min-height:330px;padding:20px 12px}.postcard{background:white;border:1px solid var(--line);box-shadow:var(--shadow);padding:12px 12px 16px;transform:rotate(-5deg);width:72%;position:relative}.postcard img{width:100%;aspect-ratio:1.5;object-fit:cover;background:var(--green)}.postcard p{font:14px "Courier New",monospace;margin:12px 0 0;text-align:center;color:var(--ink)}.tape:before{content:"";position:absolute;width:86px;height:24px;top:-10px;left:calc(50% - 43px);background:#d7c5a598;transform:rotate(-4deg);z-index:1;clip-path:polygon(2% 0,100% 5%,97% 100%,0 90%)}.scrap-note{position:absolute;right:3%;bottom:10%;background:var(--yellow);width:48%;padding:22px;transform:rotate(6deg);box-shadow:var(--shadow);border:1px solid #e3cfa0;font:italic 1.25rem Georgia}.scrap-note span{display:block;font:11px "Courier New",monospace;margin-top:12px}.stamp{position:absolute;right:0;top:5%;border:2px dashed var(--terra);border-radius:50%;width:97px;height:97px;display:grid;place-content:center;text-align:center;transform:rotate(13deg);font:10px "Courier New",monospace;letter-spacing:.06em}.stamp b{font-size:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:38px 0 22px}.section-heading p{margin:0;color:var(--muted);font-size:.9rem}.section-heading h2{margin-bottom:7px}.count-label{font:12px "Courier New",monospace;border:1px dashed var(--terra);padding:9px 13px;white-space:nowrap;transform:rotate(1deg)}.category-chips{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:22px}.chip{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:30px;padding:8px 15px;font-size:.83rem;font-weight:400}.chip:hover{background:var(--card);color:var(--ink);border-color:var(--terra)}.chip.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chip .emoji{font-size:1.1rem}.filters{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-bottom:22px;padding:18px;background:#f2ece3b0;border:1px solid #e5d8cb;border-radius:7px}.search-wrap{flex:1;min-width:220px;position:relative}.search-wrap span{position:absolute;left:13px;top:10px}.search-wrap input{padding-left:38px}.filters select{width:auto;max-width:200px;font-size:.85rem}.filters input{margin:0}.layout-controls{display:flex;gap:4px}.layout-controls button{padding:8px 12px}.layout-controls button.active{background:var(--ink);color:white}.catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.institution-card{background:#fffdf9;border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s}.institution-card:hover{transform:translateY(-4px)}.card-photo{position:relative;margin:12px 12px 0;background:#e8edda;border-radius:2px}.card-photo img{height:165px;width:100%;object-fit:cover}.category-tag{position:absolute;left:10px;bottom:10px;background:var(--paper);border:1px solid #bba28b;border-radius:4px;padding:3px 8px;font-size:.68rem;font-weight:700}.favorite{position:absolute;top:9px;right:9px;padding:3px 8px;background:var(--paper);color:var(--ink);border-color:var(--line);font-size:1.2rem}.favorite[aria-pressed="true"]{background:var(--rose)}.card-body{padding:19px;display:flex;flex-direction:column;flex:1}.card-body h3{font-size:1.15rem}.location{font-size:.75rem;color:var(--muted);margin-bottom:10px}.card-description{font-size:.84rem;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.need-preview{border-top:1px dashed var(--line);padding-top:12px;margin-top:auto;font-size:.8rem}.need-preview p{margin:0 0 8px}.need-preview ul{padding:0;list-style:none;margin:0 0 15px}.need-preview li{padding:3px 0;display:flex;justify-content:space-between;gap:10px}.dot{width:7px;height:7px;background:#bc6b65;border-radius:50%;display:inline-block;margin-right:6px}.dot.media{background:#b8943e}.dot.baja{background:#779264}.card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.card-footer small{font-size:.63rem}.example{font-size:.65rem;color:var(--muted);margin:9px 0 0}.catalog.list{grid-template-columns:1fr}.list .institution-card{display:grid;grid-template-columns:240px 1fr}.list .card-photo{margin:14px}.list .card-photo img{height:100%;min-height:200px}.list .card-body{padding:20px}.empty,.loading{text-align:center;padding:50px 20px;grid-column:1/-1;border:1px dashed var(--line);border-radius:7px;background:#f9f3e9}.how-it-works{margin-top:45px;border-top:1px dashed var(--line);padding-top:26px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;font-size:.88rem}.step{display:flex;gap:14px;align-items:start}.step b{font:25px "Courier New",monospace;color:var(--terra)}.step strong{display:block;margin-bottom:6px}.site-footer{text-align:center;border-top:1px solid var(--line);padding:32px 20px;background:#f3ece28c}.footer-brand{justify-content:center;font-size:1rem}.site-footer p{font-size:.85rem;margin:12px 0}.site-footer small{font-size:.7rem}.page-heading{padding:38px 0 10px}.page-heading h1{font-size:2.2rem}.panel{background:#fffdf9;border:1px solid var(--line);border-radius:7px;padding:27px;box-shadow:var(--shadow);margin:20px 0}.auth-panel{max-width:720px;margin:40px auto}.auth-intro{text-align:center;margin-bottom:25px}.auth-intro h1{font-size:2rem}.auth-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:12px}.auth-tabs button{flex:1}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}.field{display:flex;flex-direction:column;gap:6px;text-align:left;font-size:.85rem}.field.full,.full{grid-column:1/-1}.field small{font-size:.75rem}input,select,textarea{width:100%;min-width:0;border:1px solid #cdbbad;border-radius:5px;background:var(--paper);padding:10px 12px;color:var(--ink);font-size:.95rem}textarea{resize:vertical;min-height:94px}input[type="checkbox"]{width:17px;height:17px;accent-color:var(--terra)}.check-label{display:flex;align-items:center;gap:8px;font-size:.82rem}.form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:20px}.form-actions button{min-width:140px}.form-message{display:none}.form-message:not(:empty){display:block;padding:12px 15px;background:var(--card);border:1px solid #b75b51;border-radius:5px;margin:18px 0;color:var(--ink)}.notice{padding:14px 18px;background:var(--yellow);border:1px dashed #cfb978;border-radius:5px;font-size:.85rem;margin:20px 0}.notice.success{background:#edf1e6;border-color:#a3b786}.demo-box{border-top:1px dashed var(--line);margin-top:28px;padding-top:18px}.demo-buttons{display:flex;gap:7px;flex-wrap:wrap}.demo-buttons button{flex:1;min-width:140px;font-size:.76rem}.demo-box p{font-size:.8rem}.meta-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:12px 0}.badge{display:inline-block;padding:3px 9px;border:1px solid var(--line);border-radius:4px;background:var(--card);font-size:.71rem;white-space:nowrap}.badge.alta,.badge.rechazada,.badge.suspendido{background:#f7dedd;border-color:#dcaaa5}.badge.media,.badge.pendiente,.badge.registrada{background:var(--yellow);border-color:#ddca92}.badge.baja,.badge.aprobada,.badge.activo,.badge.recibida{background:var(--green);border-color:#afc392}.badge.contactada{background:var(--blue)}dialog{width:min(920px,calc(100% - 32px));max-height:88vh;background:var(--paper);color:var(--ink);border:1px solid var(--terra);border-radius:8px;padding:35px;box-shadow:0 20px 100px #3d291c66;overflow:auto}dialog::backdrop{background:#48362b99;backdrop-filter:blur(3px)}.dialog-close{position:sticky;top:0;float:right;margin:-20px -20px 0 10px;z-index:2;border-radius:50%;width:34px;height:34px;padding:0;font-size:23px;background:var(--paper);color:var(--ink)}.detail-hero{display:grid;grid-template-columns:155px 1fr;gap:25px;align-items:center;padding-bottom:20px;border-bottom:1px dashed var(--line)}.detail-hero img{height:150px;width:155px;object-fit:cover;transform:rotate(-3deg);padding:7px;background:white;border:1px solid var(--line)}.detail-hero h2{font-size:1.75rem}.detail-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:25px;margin-top:25px}.need-row{border:1px solid var(--line);border-left:3px solid var(--terra);padding:12px;border-radius:4px;margin-bottom:10px;font-size:.85rem;background:#fffdf9}.need-row.alta{border-left-color:#b9746b}.need-row.media{border-left-color:#bd9d54}.need-row.baja{border-left-color:#8fa878}.need-row strong{display:block}.need-row small{display:block;margin:4px 0}.contact-box{background:var(--card);padding:20px;border:1px solid var(--line);border-radius:5px;align-self:start;overflow-wrap:anywhere}.contact-box dt{font-size:.7rem;color:var(--muted);text-transform:uppercase;margin-top:15px}.contact-box dd{margin:3px 0;font-size:.88rem}.contact-box form{margin-top:20px}.contact-box .field{margin:10px 0}.contact-box .form-actions{display:block}.contact-box button{width:100%;margin-top:7px}.contact-link{margin-top:12px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.stat{padding:21px;border:1px solid var(--line);background:var(--card);border-radius:5px}.stat:nth-child(2){background:var(--yellow)}.stat:nth-child(3){background:var(--green)}.stat:nth-child(4){background:var(--blue)}.stat b{display:block;font:2rem "Courier New",monospace}.stat span{font-size:.8rem}.management-list{display:grid;gap:14px}.record{background:#fffdf9;padding:21px;border:1px solid var(--line);border-radius:5px}.record-header{display:flex;justify-content:space-between;gap:20px;align-items:start;flex-wrap:wrap}.record h3{margin-bottom:5px}.record p{font-size:.87rem;overflow-wrap:anywhere}.record .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.record-message{border-left:2px solid var(--line);padding-left:12px;white-space:pre-wrap}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}.two-columns .panel{margin:0}.inline-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.inline-heading h2{font-size:1.35rem;margin:0}.need-editor{display:grid;grid-template-columns:1.3fr 1fr 85px 90px;gap:10px}.need-editor .field{font-size:.75rem}.need-editor .actions{grid-column:1/-1;display:flex;gap:10px}#notifications{position:fixed;right:20px;bottom:20px;z-index:100;max-width:380px}.toast{background:var(--paper);border:1px solid #a3b786;border-left:5px solid #8fa878;padding:14px 20px;box-shadow:0 7px 30px #5c403333;border-radius:5px;font-size:.9rem}.toast.error{border-color:#bd7d74}.subtle{font-size:.75rem;color:var(--muted)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.section-space{margin-top:30px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1400px){.hero{padding-top:70px;padding-bottom:65px}}@media(max-width:1000px){.header-inner{gap:15px;padding:14px 20px}.session-name{display:none}nav{gap:0}nav a{font-size:.78rem;padding:8px}.hero{gap:15px}.catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.scrap-note{padding:18px}.need-editor{grid-template-columns:1fr 1fr}}@media(max-width:720px){.header-inner{flex-wrap:wrap;min-height:80px;padding:12px 17px;gap:12px}.brand{font-size:.95rem}.brand-mark{width:35px;height:38px;font-size:30px}.brand small{font-size:8px}.session-controls{margin-left:auto}.session-controls .button,.session-controls button{font-size:.75rem;padding:7px 9px}nav{order:3;flex-basis:100%;border-top:1px dashed var(--line);padding-top:7px;justify-content:center}.site-header{position:relative}main{padding:0 18px 40px}.hero{grid-template-columns:1fr;padding:30px 0 25px;gap:20px}.hero h1{font-size:2.6rem;max-width:530px}.hero p{font-size:.93rem}.hero-actions{margin-top:20px}.scrapbook{min-height:270px;max-width:410px;width:100%;margin:auto}.postcard{width:68%}.scrap-note{bottom:10%;font-size:1.1rem}.stamp{width:78px;height:78px;top:5%;right:2%}.section-heading{align-items:start;margin-top:27px;gap:12px}.section-heading h2{font-size:1.5rem}.count-label{font-size:9px;padding:7px}.category-chips{gap:7px}.chip{padding:6px 11px;font-size:.75rem}.filters{padding:12px;gap:10px}.search-wrap{min-width:100%;width:100%}.filters select{max-width:none;flex:1}.layout-controls{margin-left:auto}.steps{grid-template-columns:1fr;gap:20px}.panel{padding:20px}.two-columns{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}dialog{padding:25px 20px;max-height:92vh;width:calc(100% - 20px)}.dialog-close{margin:-12px -9px 0 0}.detail-grid{grid-template-columns:1fr}.detail-hero{grid-template-columns:90px 1fr;gap:15px}.detail-hero img{width:90px;height:105px}.detail-hero h2{font-size:1.35rem}.detail-hero .meta-line{font-size:.75rem}.auth-panel{margin:25px auto}.form-grid{gap:15px}.auth-tabs{flex-wrap:wrap}.auth-tabs button{font-size:.78rem;padding:.65em .7em}.record-header{gap:10px}.page-heading h1{font-size:1.9rem}#notifications{left:15px;right:15px;bottom:15px;max-width:none}.list .institution-card{grid-template-columns:135px 1fr}.list .card-photo{margin:10px}.list .card-body{padding:12px}.list .card-photo img{min-height:180px}.list .card-footer{align-items:start;flex-direction:column}}@media(max-width:480px){.catalog{grid-template-columns:1fr}.card-photo img{height:190px}.form-grid{grid-template-columns:1fr}.auth-panel .full{grid-column:1}.session-controls .secondary{display:none}.hero h1{font-size:2.35rem}.list .institution-card{display:flex}.list .card-photo img{height:145px;min-height:0}.list .card-footer{flex-direction:row;align-items:center}.filters .check-label{width:100%}.need-editor{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
