@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/bricolage-grotesque.woff2)format("woff2")}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/nunito-sans.woff2)format("woff2")}:root{--ink:#23263b;--muted:#596176;--paper:#f5f7ff;--surface:#fff;--line:#cdd4e7;--border:var(--line);--blue:#2e50db;--green:var(--blue);--accent:var(--blue);--soft:#edf0ff;--red:#e34954;--yellow:#ffdc60;--warning-text:#795117;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Nunito Sans,Segoe UI,sans-serif;line-height:1.65}*{box-sizing:border-box}body{background-image:radial-gradient(#cbd3e6 .7px,#0000 .7px);background-size:20px 20px;margin:0}a{color:#2849bd;text-underline-offset:3px}a:hover{color:#a72b42}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}h1,h2,h3{letter-spacing:-.035em;font-family:Bricolage Grotesque,Trebuchet MS,sans-serif;line-height:1.12}h1{margin:.3em 0;font-size:clamp(2.6rem,5.6vw,4.8rem);font-weight:800}h2{font-size:1.8rem;font-weight:750}h3{font-size:1.25rem;font-weight:750}p{max-width:75ch}small{font-size:.82rem}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#40496a;font-size:.72rem;font-weight:800}.container{max-width:1240px;margin:auto;padding:0 32px}.site-header{border-bottom:2px solid var(--ink);background:#fff}.club-ribbon{background:linear-gradient(90deg, #48a9ed 0 33.33%, var(--yellow) 33.33% 66.66%, var(--red) 66.66%);height:6px}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:104px;display:flex}.brand{color:var(--ink);align-items:center;gap:13px;text-decoration:none;display:flex}.brand:hover{color:var(--ink)}.brand img{object-fit:contain;width:69px;height:69px}.brand-wordmark{letter-spacing:-.035em;font-family:Bricolage Grotesque,sans-serif;font-size:1.5rem;font-weight:800;line-height:.96;display:block}.brand-wordmark span{letter-spacing:.12em;text-transform:uppercase;font-family:Nunito Sans,sans-serif;font-size:.65rem;font-weight:800;line-height:1.6;display:block}.brand small{letter-spacing:.06em;color:var(--muted);margin-top:8px;font-size:.65rem;font-weight:750;display:block}.nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nav a{color:var(--ink);border:2px solid #0000;border-radius:9px;padding:8px 14px;font-size:.91rem;font-weight:800;text-decoration:none}.nav a:hover{background:var(--soft)}.nav a[aria-current=page]{background:var(--yellow);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.nav a:last-child{border-color:var(--ink);background:var(--blue);color:#fff;box-shadow:3px 3px 0 var(--ink);margin-left:6px}.nav a:last-child[aria-current=page]{background:var(--yellow);color:var(--ink)}main{min-height:75vh;padding:42px 0 80px}.hero{grid-template-columns:1.35fr 1fr;align-items:center;gap:48px;padding:22px 0 45px;display:grid}.hero-kicker{border:1.5px solid var(--ink);background:#fff;border-radius:30px;align-items:center;gap:9px;padding:5px 12px;font-size:.69rem;display:inline-flex}.dot{background:var(--blue);border-radius:50%;width:8px;height:8px;display:inline-block}.hero h1{max-width:12ch;margin:23px 0;font-size:clamp(3rem,5.6vw,4.8rem);line-height:1.04}.hero h1 span{color:var(--blue)}.hero-copy{color:var(--muted);max-width:48ch;font-size:1.07rem}.hero-art{isolation:isolate;place-items:center;min-height:360px;display:grid;position:relative}.mascot-board{border:2px solid var(--ink);width:340px;max-width:90%;box-shadow:8px 8px 0 var(--ink);background:#fff;border-radius:24px;padding:27px 28px 18px;position:relative;transform:rotate(3deg)}.board-label{border-bottom:2px dashed var(--line);justify-content:space-between;align-items:center;padding-bottom:11px;font-family:Bricolage Grotesque,sans-serif;font-size:.78rem;font-weight:750;display:flex}.board-lights{gap:5px;display:flex}.board-lights i{border:1.5px solid var(--ink);background:#48a9ed;border-radius:50%;width:10px;height:10px;display:block}.board-lights i:nth-child(2){background:var(--yellow)}.board-lights i:nth-child(3){background:var(--red)}.hero-art img{width:245px;max-width:100%;height:auto;margin:8px auto 0;display:block}.board-caption{text-align:center;margin:0;font-family:Bricolage Grotesque,sans-serif;font-size:1rem;font-weight:750}.sticker{z-index:2;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);white-space:nowrap;padding:7px 16px;font-family:Bricolage Grotesque,sans-serif;font-weight:800;position:absolute}.sticker-ac{background:var(--yellow);border-radius:50%;font-size:1.4rem;top:-20px;right:-18px;transform:rotate(10deg)}.sticker-team{background:var(--blue);color:#fff;border-radius:7px;font-size:.87rem;bottom:-28px;left:-15px;transform:rotate(-5deg)}.colony-path{z-index:-1;width:calc(100% + 30px);height:calc(100% + 50px);position:absolute;inset:-25px -15px;overflow:visible}.colony-path path{fill:none;stroke:#9eabc9;stroke-width:2px;stroke-linecap:round;stroke-dasharray:3 8}.colony-path circle{stroke:var(--ink);stroke-width:2px}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin:24px 0;display:flex}.button{border:2px solid var(--ink);background:var(--blue);color:#fff;box-shadow:3px 3px 0 var(--ink);border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:800;line-height:1.5;text-decoration:none;transition:transform .12s,box-shadow .12s;display:inline-flex}.button:hover{color:#fff;box-shadow:4px 4px 0 var(--ink);background:#2340b7;transform:translate(-1px,-1px)}.button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.button.secondary{color:var(--ink);border-color:var(--ink);background:#fff}.button.secondary:hover{background:var(--soft)}.button.small{box-shadow:2px 2px 0 var(--ink);padding:6px 10px;font-size:.82rem}.stats-row{border:2px solid var(--ink);background:#fff;border-radius:12px;grid-template-columns:repeat(3,1fr);margin:10px 0 42px;display:grid;overflow:hidden}.stat{border-right:1px solid var(--line);padding:21px 25px}.stat:last-child{border:0}.stat strong{letter-spacing:-.04em;font-family:Bricolage Grotesque,sans-serif;font-size:1.8rem;font-weight:800;display:block}.stat span{color:var(--muted);font-size:.83rem}.stat:first-child strong{color:var(--blue)}.stat:nth-child(2) strong{color:#af6b00}.stat:nth-child(3) strong{color:#bc3349}.section-title{justify-content:space-between;align-items:center;gap:15px;margin:32px 0 20px;display:flex}.section-title h2{margin:0}.grid-two{grid-template-columns:2fr 1fr;gap:26px;display:grid}.grid-three{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.link-card{border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:12px;padding:25px;text-decoration:none;position:relative;box-shadow:4px 4px #cbd4f4}.link-card h3{margin:15px 0 12px}.link-card p{color:var(--muted);font-size:.92rem}.link-card:hover{color:var(--ink);box-shadow:5px 5px 0 var(--ink)}.activity-icon{border:2px solid var(--ink);background:var(--soft);border-radius:9px;place-items:center;width:44px;height:42px;margin-bottom:20px;font-family:Bricolage Grotesque,sans-serif;font-size:1.35rem;font-weight:800;display:grid}.activity-card:first-child .activity-icon{background:#dceeff}.activity-card:nth-child(2) .activity-icon{background:var(--yellow);transform:rotate(-5deg)}.activity-card:nth-child(3) .activity-icon{background:#ffe2e5}.activity-card:nth-child(2){box-shadow:4px 4px #ecd285}.activity-card:nth-child(3){box-shadow:4px 4px #e9b3b7}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;margin:20px 0;padding:25px}.notice{background:#fff9df;border:1px solid #d6c987;border-left:5px solid #d8ac25;border-radius:8px;padding:16px 20px;font-size:.94rem}.chip{background:var(--soft);color:#34458c;white-space:normal;border-radius:6px;margin:2px 4px 2px 0;padding:3px 9px;font-size:.76rem;font-weight:750;display:inline-block}.chip[data-level=Inicial]{color:#244c9e;background:#e0edff}.chip[data-level=Consolidación]{color:#755413;background:#fff0b6}.chip[data-level=Salto\ regional]{color:#8a461c;background:#ffe5cf}.chip[data-level=Avanzado]{color:#a52d44;background:#ffe1e5}.chip[data-level=Top\ global]{color:#642397;background:#eadbff}.table-wrap{border:1.5px solid var(--ink);background:#fff;border-radius:10px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th{text-align:left;color:#3c456a;text-transform:uppercase;letter-spacing:.06em;background:#eaf0ff;font-size:.72rem;font-weight:800}td,th{border-bottom:1px solid var(--line);vertical-align:top;padding:16px}tr:last-child td{border:0}tbody tr:hover{background:#f3f6ff}.problem-title{color:var(--ink);font-weight:800;text-decoration:none}.problem-letter{border:1.5px solid var(--ink);background:#fff;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;margin-right:10px;font-family:Bricolage Grotesque,sans-serif;font-weight:800;display:inline-flex}.ac{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.mini-bar{background:var(--soft);border-radius:3px;width:90px;height:5px;margin-top:7px;overflow:hidden}.mini-bar span{background:var(--blue);height:100%;display:block}.filters{grid-template-columns:2fr repeat(3,1fr);gap:12px;padding:20px 0;display:grid}.filters label,.field{color:#434b65;flex-direction:column;gap:6px;font-size:.77rem;font-weight:800;display:flex}input[type=search],select{width:100%;min-width:0;color:var(--ink);background:#fff;border:1.5px solid #98a5cb;border-radius:8px;padding:11px}input[type=checkbox]{accent-color:var(--blue);vertical-align:middle;width:17px;height:17px}.catalog-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 0 20px;display:flex}.catalog-meta select{width:auto}.selection-bar{background:var(--ink);color:#fff;border:2px solid var(--ink);z-index:5;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:24px auto 0;padding:16px 22px;display:flex;position:sticky;bottom:18px;box-shadow:4px 4px #aebde7}.selection-bar .button{background:var(--yellow);color:var(--ink);border-color:var(--yellow);box-shadow:none}.selection-bar .button.secondary{color:#fff;background:0 0;border-color:#a8b4d4}.selection-bar .actions{margin:0}.global-cart{bottom:16px;z-index:30;pointer-events:none;position:fixed;inset-inline:0}.global-cart .selection-bar{pointer-events:auto;margin:0;position:static}.global-cart .button{padding:10px 13px;font-size:.85rem}.cart-clear{color:#e1e5f5;cursor:pointer;font:inherit;background:0 0;border:0;padding:8px;font-size:.8rem;text-decoration:underline}.cart-clear:disabled{opacity:.5;cursor:wait}.cart-download-menu{display:none;position:relative}.cart-download-menu summary{cursor:pointer;text-align:center;border:2px solid #a8b4d4;border-radius:7px;padding:8px 10px;font-weight:800;list-style:none}.cart-download-menu summary::-webkit-details-marker{display:none}.cart-download-options{border:2px solid var(--ink);background:#fff;border-radius:8px;min-width:245px;position:absolute;bottom:calc(100% + 12px);right:0;overflow:hidden;box-shadow:4px 4px #aebde7}.cart-download-options button{width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:#fff;border:0;padding:14px;font-size:.9rem;display:block}.cart-download-options button:hover,.cart-download-options button:focus-visible{background:var(--soft)}.cart-download-options button:disabled{opacity:.5}.cart-feedback{overflow-wrap:anywhere;flex-basis:100%;font-size:.85rem}.cart-feedback a{color:var(--yellow)}.has-selection .footer{padding-bottom:140px}.breadcrumb{color:var(--muted);margin-bottom:25px;font-size:.8rem}.page-heading{max-width:850px;margin-bottom:30px}.page-heading .eyebrow{color:#344b9a;background:#e3eaff;border-radius:5px;padding:3px 9px;display:inline-block}.page-heading h1{font-size:clamp(2.3rem,4.5vw,3.6rem)}.problem-completions{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.problem-completions span{color:var(--muted);letter-spacing:normal;font:650 .95rem Nunito Sans,sans-serif}.tournament-judge{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.tournament-nav{flex-wrap:wrap;gap:10px;margin:24px 0;display:flex}.tournament-section{scroll-margin-top:24px}.qualification-analysis{border:1.5px solid var(--ink)}.qualification-analysis h2{margin:10px 0 16px}.qualification-paths{margin:18px 0 24px;padding-left:22px}.qualification-paths li{margin:8px 0;padding-left:3px}.qualification-overview{grid-template-columns:1fr 1.3fr;align-items:start;gap:24px;margin:25px 0;display:grid}.qualification-cutoff{background:var(--soft);border:1px solid #b6c3ef;border-radius:10px;padding:20px}.qualification-cutoff h3{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.qualification-context h3{margin:0 0 16px;font-size:1.15rem}@media (width>=701px){.qualification-context{padding-top:24px}}.preparation-grid{grid-template-columns:repeat(var(--preparation-columns,2), minmax(0, 1fr));gap:24px;display:grid}.preparation-step{border-top:3px solid var(--blue);padding:14px 0 0;position:relative}.preparation-step:nth-child(2){border-color:#d89b18}.preparation-step:nth-child(3){border-color:var(--red)}.preparation-number{background:var(--soft);border-radius:6px;place-items:center;width:26px;height:26px;font-size:.8rem;font-weight:800;display:inline-grid}.preparation-step h4{margin:10px 0;font-size:1rem}.preparation-step p{margin:12px 0;font-size:.88rem}.preparation-tools{font-weight:800}.preparation-item{flex-wrap:wrap;align-items:baseline;gap:14px;margin:12px 0;display:flex}.preparation-item .preparation-tools{margin:0}.qualification-level{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;max-width:none;margin:20px 0 0;padding-top:18px;font-size:.88rem;display:flex}@media (width<=700px){.qualification-overview,.preparation-grid{grid-template-columns:1fr}.qualification-overview{gap:18px}}.external-link{border:1.5px solid var(--ink);width:36px;height:36px;color:var(--blue);box-shadow:2px 2px 0 var(--line);background:#fff;border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.external-link:hover{background:var(--soft);color:var(--blue);box-shadow:2px 2px 0 var(--ink)}.prose{overflow-wrap:anywhere}.prose h3{margin-top:30px}.prose table{margin:20px 0;display:block;overflow:auto}.prose p{max-width:80ch}.prose code,code{color:#323b7d;background:#edf0ff;border-radius:3px;padding:.12em .28em;font-family:Consolas,ui-monospace,monospace;font-size:.9em}.prose pre{background:var(--ink);color:#f0f2ff;border-radius:8px;padding:20px;font-size:.88rem;line-height:1.65;overflow:auto}.prose pre code,.notes-builder .builder-preview pre code{color:inherit;background:0 0;padding:0}.prose li{margin:7px 0}.notes-builder .builder-preview pre{background:var(--ink);color:#f0f2ff}.notes-library .notes-search input{border-color:#98a5cb;border-radius:8px}details{border-top:1px solid var(--line);padding:15px 0}summary{cursor:pointer;font-weight:800}.empty{text-align:center;color:var(--muted);padding:50px 20px}.bar-row{grid-template-columns:115px 1fr 65px;align-items:center;gap:12px;margin:12px 0;font-size:.85rem;display:grid}.bar-track{background:var(--soft);border-radius:4px;height:20px;overflow:hidden}.bar-fill{background:var(--blue);border-radius:4px;min-width:1px;height:100%}.footer{border-top:2px solid var(--ink);color:var(--muted);background:#fff;padding:30px 0;font-size:.8rem}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:20px;display:flex}.footer strong{color:var(--ink);font-family:Bricolage Grotesque,sans-serif;font-size:1rem}.footer-dots{gap:4px;margin-right:8px;display:inline-flex}.footer-dots i{border:1px solid var(--ink);background:#48a9ed;border-radius:50%;width:9px;height:9px}.footer-dots i:nth-child(2){background:var(--yellow)}.footer-dots i:nth-child(3){background:var(--red)}.skip-link{z-index:100;background:#fff;padding:12px;position:absolute;top:-100px;left:10px}.skip-link:focus{top:10px}.loading{padding:20px}.mobile-label{display:none}.note-list{padding:0;list-style:none}.note-list li{border-bottom:1px solid var(--line);padding:15px 0}.note-list a{font-weight:800}.info-list dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:18px;font-size:.75rem}.info-list dd{margin:5px 0}.status-pending{color:#795117;background:#fff5d1;border-radius:8px;padding:12px 16px;font-size:.9rem}.local-results-section{margin-top:38px}.university-results{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;display:grid}.university-group.panel{min-width:0;margin:0;padding:18px}.university-group header h3{margin:0}.university-group header p{margin:7px 0 18px;font-size:.8rem}.local-result{border-top:1px solid var(--line);padding:15px 0}.result-heading{flex-wrap:wrap;align-items:center;gap:6px 9px;display:flex}.result-heading h4{margin:0;font-family:Bricolage Grotesque,sans-serif;font-size:1rem}.qualification-badge{background:var(--yellow);color:var(--ink);border-radius:5px;padding:3px 7px;font-size:.72rem;font-weight:800;display:inline-block}.result-metrics{flex-wrap:wrap;gap:4px 12px;margin:9px 0;font-size:.79rem;display:flex}.result-metrics span{white-space:nowrap}.solved-problems{flex-wrap:wrap;align-items:center;gap:5px;font-size:.79rem;display:flex}.solved-problems>span:first-child{margin-right:3px}.solved-problems a{border:1px solid var(--line);border-radius:4px;padding:1px 6px;font-size:.75rem;font-weight:800;text-decoration:none;display:inline-flex}.solved-problems a:hover{background:var(--soft)}.tournament-sources{margin-top:32px}.tournament-sources .note-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}@media (width<=950px){.university-results{grid-template-columns:1fr}}@media (width<=600px){.tournament-sources .note-list{grid-template-columns:1fr}}@media (width<=800px){.global-cart .selection-bar{gap:8px;padding:11px 13px}.global-cart .actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;width:100%;display:grid}.global-cart .button{white-space:nowrap;min-width:0;padding:8px 6px;font-size:.75rem}.global-cart .cart-desktop-download{display:none}.cart-download-menu{min-width:0;font-size:.75rem;display:block}.cart-clear{padding:6px 3px;font-size:.75rem}.has-selection .footer{padding-bottom:205px}}@media (width<=950px){.hero{gap:24px}.hero h1{font-size:clamp(3rem,6vw,4.5rem)}.mascot-board{max-width:85%}.nav{gap:2px}.nav a{padding:8px 9px;font-size:.85rem}}@media (width<=800px){.container{padding:0 20px}.header-inner{flex-direction:column;align-items:flex-start;gap:17px;padding:14px 0 18px}.brand img{width:57px;height:57px}.brand-wordmark{font-size:1.35rem}.brand small{margin-top:5px}.nav{gap:4px;width:100%}.nav a{padding:7px 9px;font-size:.8rem}.nav a:last-child{margin-left:auto}.hero{grid-template-columns:1fr;gap:6px;padding-top:0;padding-bottom:25px}.hero h1{max-width:13ch;font-size:clamp(3.2rem,10vw,4.4rem)}.hero-art{width:100%;max-width:390px;min-height:310px;margin:10px auto 30px}.mascot-board{width:285px;padding:20px 22px 16px}.hero-art img{width:205px}.colony-path{width:100%;height:calc(100% + 20px);inset:-10px 0}.sticker-team{bottom:-24px;left:-10px}.sticker-ac{right:-9px}.grid-two,.grid-three{grid-template-columns:1fr}.filters{grid-template-columns:1fr 1fr}.filters label:first-child{grid-column:1/-1}.stats-row .stat{min-width:0;padding:16px 10px}.stat strong{font-size:1.15rem}.stat span{margin-top:5px;font-size:.72rem;line-height:1.4;display:block}td,th{padding:12px}.selection-bar{flex-direction:column;align-items:flex-start}.selection-bar .actions{gap:8px}.desktop-only{display:none}.page-heading{margin-bottom:20px}main{padding-top:28px}.panel{padding:18px}.bar-row{grid-template-columns:85px 1fr 45px}.activity-card{padding:22px}.activity-card .activity-icon{float:right;margin:0 0 12px 16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@media print{.site-header,.footer,.selection-bar,.skip-link{display:none}body{background:#fff}main{padding:0}.container{max-width:none}.panel{border:0}.prose pre{white-space:pre-wrap;color:#000;background:#f4f4f4}}
