:root{--bg:#f5f6fa;--text:#1a1a2e;--muted:#6b7280;--accent:#ffb800;--accent-dark:#e6a800;--green:#00d26a;--green-dim:rgba(0,210,106,.12);--orange:#ff8c00;--orange-dim:rgba(255,140,0,.12);--blue:#5ea8ff;--white:#fff;--card-bg:#fff;--card-border:#e2e5ea;--board-bg:#0a0a14;--board-header:#111120;--board-odd:#0e0e1c;--board-even:#12122a;--board-hover:#1a1a3a;--board-border:rgba(255,255,255,.06);--board-text:#d8d8e8;--board-dim:#7878a0;--board-white:#f0f0ff}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);line-height:1.6}a{color:var(--text);text-decoration:none}img{max-width:100%;height:auto}

.site-header{background:var(--white);border-bottom:1px solid var(--card-border);position:sticky;top:0;z-index:100}
.header-inner{max-width:1400px;margin:0 auto;padding:.6rem 1.5rem;display:flex;align-items:center;justify-content:space-between}
.logo-img{height:90px}.nav-list{list-style:none;display:flex;gap:.4rem}
.nav-link{font-size:1.05rem;font-weight:600;padding:.55rem 1rem;border-radius:6px;transition:all .15s;color:var(--text)}.nav-link:hover{background:var(--accent);color:#000}.nav-link-alt{background:#f0f1f4}
.nav-toggle{display:none;background:none;border:1px solid var(--card-border);border-radius:6px;font-size:1.4rem;padding:.4rem .7rem;cursor:pointer}
@media(max-width:768px){.nav-toggle{display:block}.nav-list{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--white);border-bottom:1px solid var(--card-border);padding:.5rem;z-index:99}.nav-list.open{display:flex}.nav-link{padding:.7rem 1rem;font-size:1.1rem}}

.hero{background:linear-gradient(135deg,#0a0a14 0%,#1a1a3a 100%);color:#fff;padding:3rem 1.5rem;text-align:center}
.hero h1{font-size:2.4rem;font-weight:800;margin-bottom:.5rem;letter-spacing:-.03em}.hero h1 em{font-style:normal;color:var(--accent)}
.hero p{font-size:1.1rem;color:rgba(255,255,255,.7);max-width:600px;margin:0 auto}
@media(max-width:600px){.hero h1{font-size:1.6rem}.hero p{font-size:.9rem}.hero{padding:2rem 1rem}}

.section{max-width:1400px;margin:0 auto;padding:2rem 1.5rem}.section-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.section-title em{font-style:normal;color:var(--accent)}.section-sub{font-size:.9rem;color:var(--muted);margin-bottom:1.5rem}

.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.8rem}
.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:1rem 1.2rem;transition:all .15s;color:var(--text);display:block}.card:hover{border-color:var(--accent);box-shadow:0 4px 16px rgba(255,184,0,.12);transform:translateY(-2px)}
.card .card-emoji{font-size:1.4rem;margin-bottom:.3rem;display:block}.card .card-title{font-weight:700;font-size:.92rem;margin-bottom:.15rem;display:block}.card .card-sub{font-size:.72rem;color:var(--muted)}

.breadcrumb{max-width:1400px;margin:0 auto;padding:.8rem 1.5rem;font-size:.75rem;color:var(--muted)}.breadcrumb a{color:var(--accent)}.breadcrumb a:hover{text-decoration:underline}.breadcrumb span{margin:0 .3rem}

.seo-content{max-width:900px;margin:2rem auto;padding:0 1.5rem}.seo-content h2{font-size:1.3rem;font-weight:700;margin:1.5rem 0 .5rem}.seo-content h3{font-size:1.05rem;font-weight:600;margin:1.2rem 0 .4rem}.seo-content p{font-size:.9rem;color:#444;margin-bottom:.8rem;line-height:1.7}

.buscador-wrap{max-width:1400px;margin:0 auto;padding:0 1.5rem 1.5rem}
.fp{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.fg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:.55rem}
@media(max-width:768px){.fg-grid{grid-template-columns:1fr 1fr}.fg-grid .span2{grid-column:span 2}}
.fg{display:flex;flex-direction:column;gap:.18rem;min-width:0}
.fg label{font-size:.63rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.fg select,.fg input{font-family:'DM Sans',sans-serif;font-size:.8rem;padding:.38rem .4rem;border:1px solid var(--card-border);border-radius:5px;background:var(--white);color:var(--text);outline:none;transition:border-color .15s,opacity .15s;width:100%;min-width:0}
.fg select:focus,.fg input:focus{border-color:var(--accent)}.fg select{cursor:pointer}.fg select.loading{opacity:.5;pointer-events:none;border-color:var(--accent)}
.weekday-row{display:flex;gap:.18rem;flex-wrap:wrap}.wday-btn{font-family:'JetBrains Mono',monospace;font-size:.6rem;font-weight:700;padding:.2rem .32rem;border-radius:3px;border:1px solid var(--card-border);background:var(--white);color:var(--muted);cursor:pointer;transition:all .12s;user-select:none}.wday-btn.active{background:var(--accent);color:#000;border-color:var(--accent-dark)}
.toggle-row{display:flex;align-items:center;gap:.35rem;padding-top:.22rem}.toggle-row input[type="checkbox"]{accent-color:var(--accent);width:15px;height:15px;cursor:pointer}.toggle-row span{font-size:.76rem}
.f-actions{display:flex;align-items:center;justify-content:flex-start;margin-top:.55rem;padding-top:.55rem;border-top:1px solid #e5e7eb;gap:.4rem}
.btn-r{font-family:'DM Sans',sans-serif;font-size:.7rem;font-weight:600;color:var(--muted);background:none;border:1px solid var(--card-border);border-radius:5px;padding:.32rem .65rem;cursor:pointer}.btn-r:hover{border-color:#999;color:var(--text)}
.btn-share{font-family:'DM Sans',sans-serif;font-size:.7rem;font-weight:600;color:var(--accent);background:none;border:1px solid var(--accent);border-radius:5px;padding:.32rem .65rem;cursor:pointer;transition:all .12s}.btn-share:hover{background:var(--accent);color:#000}

.board{border-radius:6px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.08),0 12px 40px rgba(0,0,0,.15)}
.board-sign{background:var(--accent);padding:.38rem 1rem;display:flex;align-items:center;gap:.5rem}.board-sign .se{font-weight:700;font-size:.92rem;color:#000}.board-sign .en{font-weight:400;font-size:.78rem;color:rgba(0,0,0,.5);margin-left:.25rem}
.btw{overflow:auto;background:var(--board-bg);max-height:72vh}.btw::-webkit-scrollbar{width:10px;height:10px}.btw::-webkit-scrollbar-track{background:var(--board-bg)}.btw::-webkit-scrollbar-thumb{background:#3a3a5c;border-radius:5px}.btw::-webkit-scrollbar-corner{background:var(--board-bg)}
table{width:100%;border-collapse:separate;border-spacing:0}thead th{font-family:'JetBrains Mono',monospace;background:var(--board-header);color:var(--accent);font-weight:700;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em;padding:.5rem .55rem;text-align:left;border-bottom:2px solid var(--accent-dark);position:sticky;top:0;white-space:nowrap;z-index:2}
tbody tr{border-bottom:1px solid var(--board-border);transition:background .1s}tbody tr:nth-child(odd){background:var(--board-odd)}tbody tr:nth-child(even){background:var(--board-even)}tbody tr:hover{background:var(--board-hover)}
td{font-family:'JetBrains Mono',monospace;padding:.4rem .55rem;white-space:nowrap;vertical-align:middle;color:var(--board-text);font-size:.74rem;line-height:1.4}
.cp{color:var(--green);font-weight:700;font-size:.88rem}.cp a{color:var(--green);text-decoration:none;transition:color .12s}.cp a:hover{color:var(--accent)}
.ra{color:var(--accent);font-size:.58rem;margin:0 .3rem}.rc{display:inline-flex;align-items:center;cursor:default;position:relative}
.rcy{font-family:'DM Sans',sans-serif;font-weight:600;font-size:.73rem;color:var(--board-white)}.ria{font-family:'JetBrains Mono',monospace;font-size:.55rem;color:var(--board-dim);margin-left:.15rem}
.cd{color:var(--board-text);font-size:.72rem}.cw{font-size:.54rem;color:var(--board-dim);letter-spacing:.06em;margin-left:.2rem}
.ct{color:var(--board-white);font-size:.74rem}.cta{color:var(--board-text);font-size:.74rem}.cts{color:var(--board-dim);margin:0 .08rem;font-size:.65rem}
.cdy{color:var(--blue);font-weight:700;font-size:.8rem;text-align:center}
.cf{color:var(--board-text);font-size:.68rem}.cf2{color:var(--board-dim);font-size:.62rem}
.cal{font-family:'DM Sans',sans-serif;color:var(--board-white);font-weight:600;font-size:.72rem}.cpr{font-family:'DM Sans',sans-serif;font-size:.54rem;color:var(--board-dim)}
.sub{display:block;margin-top:.1rem}
.badge{display:inline-block;padding:.05rem .3rem;border-radius:2px;font-family:'JetBrains Mono',monospace;font-size:.52rem;font-weight:700;letter-spacing:.05em}
.bok{background:var(--green-dim);color:var(--green);border:1px solid rgba(0,210,106,.25)}.bsc{background:var(--orange-dim);color:var(--orange);border:1px solid rgba(255,140,0,.25)}.vt{font-size:.48rem;color:var(--orange)}
.br{font-family:'DM Sans',sans-serif;font-size:.63rem;font-weight:700;color:#000;background:var(--accent);text-decoration:none;padding:.22rem .5rem;border-radius:3px;display:inline-block;transition:opacity .12s;white-space:nowrap}.br:hover{opacity:.8}
.bf{background:var(--board-header);padding:.38rem 1rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--board-border);flex-wrap:wrap;gap:.3rem}.bf span{font-family:'JetBrains Mono',monospace;font-size:.58rem;color:var(--board-dim)}.bf .ld{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:.25rem;animation:blink 2s ease-in-out infinite}@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.bl{display:none;text-align:center;padding:2.5rem;background:var(--board-bg);color:var(--board-dim);font-family:'JetBrains Mono',monospace;font-size:.8rem}.bl.visible{display:block}
.spinner{display:inline-block;width:20px;height:20px;border:3px solid var(--board-border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:.35rem}@keyframes spin{to{transform:rotate(360deg)}}
.nr{text-align:center;padding:2.5rem;background:var(--board-bg);color:var(--board-dim);font-family:'JetBrains Mono',monospace;font-size:.8rem}
.toast{position:fixed;bottom:1.5rem;left:50%;transform:translateX(-50%);background:#333;color:#fff;padding:.45rem .9rem;border-radius:6px;font-size:.78rem;z-index:999;opacity:0;transition:opacity .3s}.toast.show{opacity:1}
[data-tip]{position:relative}[data-tip]:hover::after{content:attr(data-tip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:#222;color:#eee;font-family:'DM Sans',sans-serif;font-size:.65rem;font-weight:400;padding:.25rem .5rem;border-radius:4px;white-space:nowrap;z-index:10;pointer-events:none}

.site-footer{background:#0a0a14;color:rgba(255,255,255,.7);margin-top:3rem;padding:2.5rem 1.5rem 1rem}
.footer-inner{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}
@media(max-width:768px){.footer-inner{grid-template-columns:1fr 1fr}}@media(max-width:480px){.footer-inner{grid-template-columns:1fr}}
.footer-logo{height:50px;margin-bottom:.5rem}.footer-desc{font-size:.78rem;line-height:1.6}
.footer-col h4{color:var(--accent);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.6rem}
.footer-col ul{list-style:none}.footer-col li{margin-bottom:.3rem}.footer-col a{color:rgba(255,255,255,.6);font-size:.78rem;transition:color .12s}.footer-col a:hover{color:var(--accent)}
.footer-bottom{max-width:1400px;margin:1.5rem auto 0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08);text-align:center;font-size:.68rem;color:rgba(255,255,255,.3)}
