:root{font-family:Inter,Arial,sans-serif;color:#102f4f;background:#ffffff;line-height:1.5;font-synthesis:none;--green:#0076ca;--muted:#546f89;--border:#d9eaf0}*{box-sizing:border-box}body{margin:0}a{color:inherit}header{display:flex;align-items:center;gap:28px;padding:20px max(4vw,20px);background:white;border-bottom:1px solid var(--border);flex-wrap:wrap}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-size:42px;font-weight:800;line-height:1}.brand span{font-size:18px;letter-spacing:2px;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:9px;color:var(--muted)}nav{display:flex;gap:18px;flex:1;flex-wrap:wrap}nav a{text-decoration:none;font-size:13px;padding:9px 0}nav a[aria-current]{border-bottom:2px solid var(--green);font-weight:700}#identity{display:flex;align-items:center;gap:12px;font-size:12px}main{max-width:1400px;margin:auto;padding:44px max(4vw,20px) 65px;min-height:70vh}h1{font-size:clamp(32px,4.3vw,58px);line-height:1.1;letter-spacing:-1.5px;margin:0 0 22px;max-width:850px}h2{font-size:23px;margin:0 0 14px}h3{font-size:19px;margin:0 0 12px}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:2.5px;font-weight:bold;color:var(--green);margin-bottom:13px}.intro{max-width:740px;color:var(--muted);margin-bottom:30px}.hero{background:#e6fafc;border:1px solid #c1eef3;border-radius:20px;padding:40px;margin-bottom:32px;position:relative;overflow:hidden}.hero:after{content:'≈';position:absolute;right:24px;bottom:-110px;font-family:Georgia,serif;font-size:330px;line-height:1;color:#8bdfe9;pointer-events:none;z-index:0}.hero>*{position:relative;z-index:1}.hero h1{max-width:720px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:22px;margin:22px 0}.columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:32px}.card{background:white;border:1px solid var(--border);padding:25px;border-radius:14px;overflow-wrap:anywhere}.card p{color:var(--muted);font-size:14px}.card .amount{font-size:30px;font-weight:bold;color:#102f4f}.stats{display:flex;gap:15px;flex-wrap:wrap;margin:24px 0}.stats .card{flex:1;min-width:140px}.stats strong{font-size:30px;display:block}.muted,small{color:var(--muted)}button,.button{display:inline-block;padding:12px 17px;background:var(--green);border:1px solid transparent;border-radius:7px;color:white;text-decoration:none;font:inherit;font-size:13px;font-weight:bold;cursor:pointer}button:hover,.button:hover{background:#005da6}button:disabled{opacity:.5;cursor:wait}.quiet{background:transparent;color:#0068ad;border-color:#a8dce4}.quiet:hover{background:#e8f9fc}.danger{background:#994d39}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.actions button{font-size:12px;padding:9px 12px}form{display:grid;gap:16px}label{display:grid;gap:6px;font-size:12px;font-weight:700}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #b7d6df;border-radius:6px;background:white;color:#102f4f;font:inherit;font-size:14px}textarea{min-height:90px;resize:vertical}input[type=checkbox]{width:auto;accent-color:var(--green)}label.check{display:flex;align-items:flex-start;font-weight:400}.check input{margin-top:4px}input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible{outline:3px solid #0076ca;outline-offset:2px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.badge{display:inline-block;background:#e4f3ff;border-radius:30px;padding:4px 10px;font-size:11px;color:#0068ad}.badge.warning{background:#fff0ce;color:#795b18}.badge.danger{background:#f6dfd8;color:#853d29}.empty{padding:40px 20px;border:1px dashed #b5dce5;border-radius:12px;text-align:center;color:var(--muted);margin:20px 0}.row{padding:20px 0;border-bottom:1px solid var(--border)}.row:last-child{border:0}.list{margin:24px 0}.row-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--border)}th{font-size:11px;color:var(--muted)}dl{display:grid;grid-template-columns:minmax(110px,1fr) 2fr;font-size:13px;gap:9px}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.tabs{display:flex;gap:10px;overflow:auto;margin:24px 0;padding-bottom:8px}.tabs a{text-decoration:none;padding:8px 13px;border-radius:30px;background:white;border:1px solid var(--border);white-space:nowrap;font-size:12px}.tabs a[aria-current]{background:var(--green);color:white}.auth{max-width:500px;margin:0 auto}.auth h1{font-size:36px}.banner{padding:18px 22px;border-radius:10px;background:#fff0ce;font-size:13px;margin:20px 0}.success{background:#ddf7f3}#notice:not(:empty){position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:15px 24px;box-shadow:0 8px 30px #173e4222;z-index:100;border-radius:10px;max-width:90vw;background:#102f4f;color:white}dialog{border:1px solid var(--border);padding:32px;border-radius:14px;width:min(95vw,660px);max-height:90vh;box-shadow:0 20px 80px #133d4244}dialog::backdrop{background:#123e4266}.close{float:right;padding:4px 12px;font-size:24px}.qr{width:230px;height:230px;max-width:100%;display:block;margin:20px auto}.code{font-family:monospace;overflow-wrap:anywhere;padding:15px;background:#edf9fc;border-radius:7px;user-select:all}.search{max-width:500px;margin:20px 0}footer{display:flex;gap:25px;justify-content:space-between;flex-wrap:wrap;padding:25px max(4vw,20px);font-size:11px;border-top:1px solid var(--border);color:var(--muted)}#menu-toggle{display:none}.loading{padding:50px;text-align:center}@media(max-width:850px){header{gap:16px}.columns{grid-template-columns:1fr}.hero{padding:28px}.hero:after{opacity:.4}.two{grid-template-columns:1fr}#menu-toggle{display:block;margin-left:auto;background:transparent;border:1px solid var(--border);color:var(--green)}nav{display:none;flex-basis:100%}nav.open{display:flex}#identity{width:100%}dl{grid-template-columns:1fr}dd{margin-bottom:8px}.stats .card{min-width:120px}.card{padding:20px}}

.skip-link{position:fixed;left:16px;top:-100px;z-index:200;background:#102f4f;color:white;padding:12px 18px;border-radius:8px}.skip-link:focus{top:12px}.recipient-area{display:grid;gap:14px;padding:16px;background:#f0fafc;border-radius:8px}.recipient-area:empty{display:none}select[multiple]{min-height:150px}select[multiple] option{padding:8px;border-radius:4px}select[multiple] option:checked{background:#d8f4f9}.banner[role=status]{color:#603c19;overflow-wrap:anywhere}dialog .card{margin:14px 0;padding:18px}.row-head .quiet{flex-shrink:0}input[type=file]{font-size:12px}form button[type=submit]{min-height:44px}dialog h2{padding-right:22px}@media(max-width:550px){header{padding:16px}.brand span{font-size:15px}main{padding:28px 16px 45px}.hero{padding:24px}.hero:after{display:none}h1{font-size:34px}.actions>*{flex:1;min-width:130px}dialog{padding:22px;max-height:94dvh}.recipient-area{padding:12px}nav.open{display:grid;grid-template-columns:1fr 1fr}nav.open a{padding:10px}.card{padding:18px}dl{font-size:14px}}
.wave-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-block:1px solid var(--border);padding:16px 0;margin:18px 0}.wave-metrics strong{display:block;font-size:20px;color:#102f4f}.wave-metrics span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.marine-caption{font-size:11px!important;line-height:1.5;color:var(--muted)}.wave-chart svg{display:block;width:100%;height:auto;background:#f0fafc;border-radius:9px;margin:18px 0}.table-wrap caption{text-align:left;font-size:11px;color:var(--muted);padding:12px 0}.beach-card h3{font-size:24px}.beach-card>.eyebrow{font-size:9px;margin-top:0}.beach-card .actions{margin-bottom:0}.beach-card .actions button{white-space:normal}.beach-card .wave-metrics strong{font-size:18px}@media(max-width:450px){.wave-metrics{gap:6px}.wave-metrics strong{font-size:16px}.table-wrap table{min-width:500px}}

/* Sea palette: white surfaces, calipso accents and clear contrast. */
:root{--sea:#0076ca;--sea-bright:#149fff;--ink:#102f4f;color-scheme:light}
body{background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}
header{padding-block:23px;box-shadow:0 3px 22px #124c5b05}
.brand{color:var(--sea)}.brand span{color:var(--ink)}
nav a{color:#496975;transition:color .18s}nav a:hover,nav a[aria-current]{color:var(--sea)}
.hero{background:linear-gradient(115deg,#e4f9fc 0%,#f4fdfe 65%,#d0f4f8 100%);border:1px solid #cfedf3;border-radius:28px;padding:52px;isolation:isolate}
.hero:after{content:'≈';font-size:400px;right:15px;bottom:-125px;color:#62d1e0;opacity:.4;transform:rotate(-8deg)}
.hero .intro{max-width:560px;font-size:17px;color:#426b77}.hero h1{color:#073b65;letter-spacing:-2px}
.card{border-radius:20px;box-shadow:0 5px 24px #144b5d06;transition:box-shadow .2s,border-color .2s}
.card:hover{border-color:#b4dfe8;box-shadow:0 10px 28px #144b5d0b}
button,.button{border-radius:11px;min-height:42px;transition:background .18s,box-shadow .18s}
.button{box-shadow:0 5px 16px #0076ca24}.quiet{background:#fff}.danger:hover{background:#803c2c}
input,select,textarea{border-radius:10px}th{background:#f6fcfd}dialog{border-radius:23px;background:#fff;color:var(--ink)}
footer{background:#f5fcfd;padding-block:30px}footer strong{color:var(--sea)}
.beach-card{overflow:hidden;display:flex;flex-direction:column}.beach-card>.actions{margin-top:auto;padding-top:18px}
.beach-photo{margin:-25px -25px 24px;position:relative;background:#eaf6ff;flex-shrink:0}
.beach-photo img{display:block;width:100%;height:210px;object-fit:cover}
.beach-photo figcaption{padding:9px 14px;font-size:10px;line-height:1.6;color:#426782;background:#f1f8ff}
.beach-photo figcaption a{color:#0067ac;text-underline-offset:2px}.beach-photo .photo-label{font-weight:700;display:block;color:#1b587c}
.spot-photo{margin:12px 0 22px;border-radius:14px;overflow:hidden}.spot-photo img{height:auto;max-height:340px;object-fit:cover}
.wave-metrics{background:#f0f8ff;border:0;border-radius:13px;padding:15px 10px}.wave-metrics strong{color:#0067ac}.beach-card h3{line-height:1.15}
@media(min-width:1150px){#beaches{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.hero{padding:34px}.beach-photo{margin:-20px -20px 22px}}
@media(max-width:550px){header{padding:18px 16px}.hero{padding:28px 23px;border-radius:22px}.hero h1{letter-spacing:-1.3px}.hero .intro{font-size:15px}.beach-photo{margin:-18px -18px 20px}.beach-photo img{height:200px}.spot-photo{margin:12px 0 22px}.spot-photo img{height:auto}.card{border-radius:17px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
main:focus{outline:none}

/* La Boca: sunny surf club, handwritten notes and bright sky blue. */
@font-face{font-family:Outfit;src:url('/static/fonts/outfit.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Caveat;src:url('/static/fonts/caveat.ttf') format('truetype');font-weight:400 700;font-display:swap}
:root{font-family:Outfit,Arial,sans-serif;--green:#0076ca;--sea:#0076ca;--sea-bright:#149fff;--ink:#102f4f;--muted:#546f89;--border:#d9eafa}
header{border-bottom:2px solid #e5f3ff;padding-block:19px;gap:32px}.brand{align-items:flex-start;font-size:47px}.brand span{font-size:22px;font-weight:900;letter-spacing:1.3px}.brand small{font-family:Caveat,'Segoe Print',cursive;font-size:25px;font-weight:700;text-transform:none;letter-spacing:.2px;color:#0076ca;transform:rotate(-5deg);margin:4px 0 0;line-height:1.1}
nav{gap:20px}nav a{font-size:14px;font-weight:500}main{padding-top:30px}
.hero.beach-vibe{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:42px 40px 36px;border:2px solid #bbe3ff;background:linear-gradient(125deg,#effaff 5%,#e1f3ff 48%,#a6deff 100%);border-radius:30px;overflow:hidden;box-shadow:0 9px 0 #e0f2ff;margin-bottom:28px;isolation:isolate}
.hero.beach-vibe:after{display:none}.hero .eyebrow{letter-spacing:2px;font-size:10px;color:#07588f}.hero h1{font-weight:850;font-size:clamp(38px,4.3vw,64px);letter-spacing:-2.2px;line-height:1.02;color:#073b65;margin-bottom:8px}.hero h1 em{font-style:normal;display:inline-block;background:linear-gradient(transparent 75%,#ffdf67 75%,#ffdf67 94%,transparent 94%);transform:rotate(-3deg)}
.hero-location{font:700 40px/1.2 Caveat,'Segoe Print',cursive;color:#0076ca;transform:rotate(-4deg);margin:9px 0 20px}.hero .intro{font-size:16px;line-height:1.55;max-width:420px;margin:24px 0;color:#325c7a}.hero-copy{align-self:center;padding-bottom:12px}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.hero .button{background:#0076ca;border-radius:50px;padding:15px 24px;font-size:15px;box-shadow:0 5px 0 #005394;transform:rotate(-2deg)}.hero .button:hover{background:#005fa9}.hero-link{font-size:13px;font-weight:650;color:#07588f;text-underline-offset:5px}.vibe-sticker{display:inline-block;background:#ffdf67;border:1px solid #e6bd3b;border-radius:8px 18px 8px 18px;color:#19394c;padding:8px 13px;font-size:12px;font-weight:700;transform:rotate(2deg);margin-top:32px;box-shadow:2px 3px 0 #143e5820}
.hero-visual{position:relative;min-width:0;align-self:center;padding:20px 8px 24px 0}.hero-sun{position:absolute;width:160px;height:160px;background:#ffdc63;border-radius:50%;right:-42px;top:-26px;z-index:0}.hero-photos{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px;z-index:1;transform:rotate(2deg)}
.hero-photos .beach-photo{margin:0;overflow:hidden;background:#fff;border:7px solid #fff;border-radius:6px;box-shadow:0 8px 20px #073b6522;transform:rotate(-4deg)}.hero-photos .beach-photo:first-child{grid-column:1/-1;transform:rotate(1deg)}.hero-photos .beach-photo:nth-child(3){transform:rotate(5deg)}.hero-photos .beach-photo img{height:130px;width:100%;object-fit:cover}.hero-photos .beach-photo:first-child img{height:210px}.hero-photos figcaption{background:#fff;padding:5px 3px 1px;font-size:8px;line-height:1.2}.hero-photos .photo-label{display:none}.hero-palm{position:absolute;width:160px;height:auto;bottom:-24px;left:-55px;z-index:2;transform:rotate(-10deg);pointer-events:none;filter:drop-shadow(2px 2px 0 #fff)}.photo-sticker{font:700 25px/1.1 Caveat,cursive;position:absolute;right:-15px;bottom:8px;z-index:3;background:#fff9d8;color:#17415b;padding:9px 15px;transform:rotate(-8deg);box-shadow:0 3px 8px #102f4f18}
.vibe-strip{display:flex;gap:24px;align-items:center;justify-content:space-around;flex-wrap:wrap;padding:14px 18px;background:#0076ca;color:white;font-size:10px;font-weight:700;letter-spacing:1.8px;border-radius:12px;position:relative;margin:30px 0}.vibe-strip:after{content:'';position:absolute;left:20px;right:20px;bottom:-4px;height:4px;background:linear-gradient(90deg,#329a65 0 33%,#ffdc63 33% 66%,#df6856 66%);border-radius:4px}.vibe-strip span[aria-hidden]{font-size:19px;color:#ffdf67;line-height:1}
h2{font-weight:750;letter-spacing:-.4px}.badge:not(.warning):not(.danger){background:#e4f3ff;color:#0067ac}.card{border-color:#dcecf9;border-radius:22px}.card h2{margin-top:12px}.wave-metrics{background:#edf7ff}.wave-metrics strong{color:#006db6}button:hover,.button:hover{background:#005da6}.quiet:hover{background:#e8f5ff}.danger:hover{background:#803c2c}.beach-photo .photo-label{color:#1b587c}.beach-photo figcaption a{color:#0067ac}.wave-chart svg{background:#eff8ff}footer{background:#f0f8ff;border-top:3px solid #d7ecfc}footer strong{font-size:16px;font-weight:800}
.spot-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.spot-gallery .spot-photo{margin:0 0 16px}.spot-gallery img{height:160px;object-fit:cover}.spot-gallery figcaption{font-size:9px}
@media(min-width:1150px){.hero.beach-vibe{padding:48px;gap:50px}.hero-photos .beach-photo:first-child img{height:235px}.hero-photos .beach-photo img{height:145px}}
@media(max-width:850px){header{gap:16px}.hero.beach-vibe{padding:30px 26px;gap:24px;grid-template-columns:1fr 1fr}.hero h1{font-size:39px;letter-spacing:-1.7px}.hero-location{font-size:34px}.hero-photos .beach-photo:first-child img{height:190px}.hero-photos .beach-photo img{height:105px}.hero-palm{width:125px;left:-35px}.vibe-strip{gap:14px;font-size:9px}.brand small{font-size:24px}}
@media(max-width:650px){.hero.beach-vibe{grid-template-columns:1fr;padding:28px 24px 32px;gap:12px}.hero-copy{padding:0}.hero h1{font-size:45px;max-width:420px}.hero-location{font-size:37px}.hero .intro{margin:20px 0}.vibe-sticker{margin-top:25px}.hero-visual{margin:15px 8px 10px;padding:16px 0}.hero-photos .beach-photo:first-child img{height:200px}.hero-photos .beach-photo img{height:115px}.hero-palm{left:-25px;bottom:-22px;width:125px}.hero-sun{right:-30px;width:130px;height:130px}.photo-sticker{right:-12px;bottom:0;font-size:24px}.vibe-strip{gap:12px 18px;justify-content:center}.vibe-strip span:last-child{display:none}.brand span{font-size:20px}.brand small{font-size:24px}header{padding-block:18px}.spot-gallery{grid-template-columns:1fr}.spot-gallery img{height:auto}.hero-photos figcaption{font-size:7px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}}

.hero-photos figcaption{display:none}.hero-photos .beach-photo{border-bottom-width:17px}.hero-credits{grid-column:1/-1;margin:8px 0 -15px;font-size:10px;color:#315d7e;line-height:1.6}.hero-credits a{color:#07588f;text-underline-offset:2px;padding:0 2px}.hero-credits a[aria-label]{padding:3px 5px}
@media(max-width:650px){.hero-credits{margin:20px 0 -12px;font-size:9px}}

/* ===== v1.2 · portada La Boca, menú, escuelas y profesores ===== */
header{position:sticky;top:0;z-index:50;gap:22px;padding:14px max(4vw,20px);box-shadow:0 2px 14px #0b3c6510}
nav{gap:4px}
nav a{font-size:13.5px;font-weight:600;color:#1d4a70;padding:8px 12px;border-radius:30px}
nav a:hover{background:#eaf6ff}
nav a[aria-current]{border:0;background:#0076ca;color:#fff}
#identity .who{font-weight:700;color:#1d4a70}
#identity .enter{padding:9px 18px;border-radius:30px}
#identity button{background:transparent;color:#0068ad;border:1px solid #a8dce4;border-radius:30px;padding:8px 14px}
.boca-hero h1{font-size:clamp(44px,5vw,72px)}
.boca-hero .hero-location{font-size:32px;margin:4px 0 12px}
.hero-tools{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin:16px 0}
.level-pick{font-size:12px;min-width:260px;max-width:340px}
.level-pick select{border-radius:30px;padding:10px 14px;border-color:#9fd2f5;font-weight:600}
.hero-actions .quiet{border-radius:50px;padding:14px 20px;font-size:14px;background:#ffffffb0}
.now-card{background:#ffffffd9;border:1px solid #bfe2fb;border-radius:18px;padding:16px 18px;box-shadow:0 6px 18px #0b3c6514;max-width:560px}
.now-title{font-size:14px;color:#073b65}
.title-line{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.title-line h3{margin:0}
.sea-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;background:#f0f8ff;border-radius:13px;padding:12px 10px;margin:12px 0}
.sea-metrics div{min-width:0}
.sea-metrics .k{display:block;font-size:9.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#4d7896}
.sea-metrics strong{display:block;font-size:16px;color:#0067ac;line-height:1.25;margin:3px 0 1px;overflow-wrap:normal}
.sea-metrics small{display:block;font-size:10px;line-height:1.3}
.sea-metrics.big strong{font-size:21px}
.now-card .sea-metrics{background:#eef8ff}
.badge.sea{font-weight:700;font-size:11px;padding:5px 11px}
.badge.ok{background:#d8f5e6;color:#1b6b45}
.badge.info{background:#e4f3ff;color:#0068ad}
.small-note{font-size:12px!important;margin:6px 0}
.beach-card{position:relative}
.beach-card .title-line{margin-bottom:4px}
.beach-card details{font-size:13px;color:var(--muted);margin-top:6px}
.beach-card summary{cursor:pointer;font-weight:600;color:#1d4a70}
.beach-card.featured{border:2px solid #0076ca;box-shadow:0 8px 24px #0076ca22}
.ribbon{position:absolute;top:14px;left:14px;z-index:2;background:#ffdf67;color:#19394c;font-size:11px;font-weight:800;padding:5px 12px;border-radius:30px;box-shadow:0 2px 0 #e6bd3b}
.home-section{margin:46px 0}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:6px}
.section-head h2{font-size:30px;margin:0 0 6px;color:#073b65}
.section-head .eyebrow{margin-bottom:6px}
.section-head p.muted{margin:0;max-width:640px}
.section-head .button{border-radius:30px}
.people .person{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start}
.person .actions{grid-column:1/-1;margin:6px 0 0}
.person h3{margin:0 0 6px;font-size:19px}
.person .eyebrow{margin-bottom:4px;font-size:9.5px}
.person p{margin:0 0 6px}
.avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:22px;color:#fff;background:linear-gradient(135deg,#0076ca,#28b5e8);box-shadow:0 4px 0 #0059a0}
.avatar.school{border-radius:18px;background:linear-gradient(135deg,#ffb938,#ff7a59);box-shadow:0 4px 0 #d9643f}
.stars{color:#c88a00;font-weight:800}
.actions .button{font-size:12px;padding:9px 12px}
.steps ol{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:step}
.steps li{counter-increment:step;background:#f3faff;border:1px solid #d6ecfb;border-radius:16px;padding:20px 18px 18px;position:relative}
.steps li:before{content:counter(step);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#0076ca;color:#fff;font-weight:800;margin-bottom:10px}
.steps strong{display:block;font-size:16px;color:#073b65;margin-bottom:4px}
.steps span{font-size:13px;color:var(--muted)}
.tide-list ul{list-style:none;padding:0;margin:8px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.tide-list li{background:#f0f8ff;border-radius:10px;padding:9px 12px;font-size:13px}
.tide-list li.high strong{color:#0067ac}
.tide-list li.low strong{color:#7a5a00}
.marine-caption{font-size:11px;color:var(--muted)}
@media(max-width:1100px){.steps ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){header{position:static}
nav a{border-radius:10px}
.hero.beach-vibe.boca-hero{grid-template-columns:1fr}
.boca-hero .hero-visual{order:-1;padding:6px 0 0}
.boca-hero .hero-photos .beach-photo:first-child img{height:180px}
.boca-hero .hero-photos .beach-photo img{height:100px}
.sea-metrics{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}
.level-pick{min-width:0;width:100%;max-width:none}}
@media(max-width:550px){.sea-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
.steps ol{grid-template-columns:1fr}
.people .person{grid-template-columns:48px 1fr}
.avatar{width:48px;height:48px;font-size:17px}
.section-head h2{font-size:24px}
.hero-actions .button,.hero-actions .quiet{width:100%;text-align:center;transform:none}}
.grid.people{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr))}
@media(max-width:850px){.brand{order:1}#identity{order:2;width:auto;margin-left:auto}#menu-toggle{order:3;margin-left:0}nav{order:4}#identity .who{display:none}}
.beach-card .sea-metrics{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}

/* ===================== Tema "Costa" v1.2 — sobrio y playero ===================== */
:root{--ink:#13303d;--ocean:#0f4c5c;--ocean-2:#16677a;--sea:#2a7f7a;--sand:#c8a26b;--sand-soft:#f3ece0;--paper:#faf7f2;--line:#e7dfd2;--muted:#5f7178;--green:#0f4c5c;--border:#e7dfd2;color:var(--ink);background:var(--paper)}
body{background:var(--paper)}
h1,h2,h3,.brand span{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:-.3px}
h1{letter-spacing:-.8px;color:var(--ink)}
h2{color:var(--ink)}
.eyebrow,.kicker{font-family:Outfit,Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:2.2px;font-size:11px;font-weight:600;color:var(--sea);margin:0 0 10px}
/* Cabecera */
header{background:#fffdf9;border-bottom:1px solid var(--line);box-shadow:none;padding:12px max(4vw,20px)}
.brand{gap:11px;font-size:inherit}
.brand-mark{width:38px;height:38px;flex-shrink:0}
.brand span{font-size:22px;letter-spacing:0;color:var(--ocean);line-height:1.05}
.brand small{font-family:Outfit,Inter,Arial,sans-serif;font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-top:3px;color:var(--muted)}
nav a{color:var(--ink);font-weight:500;border-radius:6px;padding:8px 11px}
nav a:hover{background:var(--sand-soft)}
nav a[aria-current]{background:transparent;color:var(--ocean);font-weight:700;box-shadow:inset 0 -2px 0 var(--sand);border-radius:0}
#identity .enter{border-radius:6px;background:var(--ocean)}
#identity button{border-radius:6px;color:var(--ocean);border-color:var(--line)}
/* Botones */
button,.button{background:var(--ocean);border-radius:6px;font-weight:600;letter-spacing:.2px}
button:hover,.button:hover{background:#0b3a47}
.quiet{background:#fff;color:var(--ocean);border-color:#cfd9d7}
.quiet:hover{background:var(--sand-soft)}
.button.ghost{background:transparent;color:#fff;border:1px solid #ffffffb3}
.button.ghost:hover{background:#ffffff1f}
.text-link{color:var(--ocean);font-weight:600;font-size:14px;text-decoration:none;border-bottom:1px solid var(--sand);padding-bottom:2px}
.text-link:hover{color:var(--sea)}
input,select,textarea{border-color:#d8d0c2;border-radius:6px}
input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible{outline-color:var(--sea)}
/* Portada: foto a sangre de La Boca */
main{padding-top:28px}
.coast-hero{position:relative;border-radius:14px;overflow:hidden;min-height:560px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:#0f4c5c;margin-bottom:12px}
.coast-media{position:absolute;inset:0}
.coast-media img{width:100%;height:100%;object-fit:cover;object-position:center 60%;filter:saturate(.9) contrast(1.03)}
.coast-media:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0b2a3300 0%,#0b2a3333 35%,#0b2a33d9 100%),linear-gradient(90deg,#0b2a33b3 0%,#0b2a3300 60%)}
.coast-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:32px;align-items:end;padding:56px 48px 30px}
.coast-copy .kicker{color:#e8d6b5}
.coast-copy h1{color:#fff;font-size:clamp(52px,7vw,96px);line-height:.95;margin:0 0 16px;letter-spacing:-1.5px}
.coast-copy .lead{font-size:17px;line-height:1.55;max-width:480px;color:#eef3f2;margin:0 0 26px}
.coast-hero .hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.coast-hero .hero-actions .button{padding:14px 20px;font-size:14px}
.coast-hero .hero-actions .button:not(.ghost){background:#f3e9d8;color:var(--ocean)}
.coast-hero .hero-actions .button:not(.ghost):hover{background:#fff}
.coast-panel{background:#fffdf9f2;color:var(--ink);border-radius:12px;padding:18px 18px 6px;box-shadow:0 18px 40px #0b2a3340;backdrop-filter:blur(6px)}
.coast-panel .now-card{background:transparent;border:0;box-shadow:none;padding:0;max-width:none}
.coast-panel .now-title{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:19px;color:var(--ink)}
.coast-panel .hero-tools{margin:4px 0 10px}
.coast-panel .level-pick{max-width:none;width:100%;color:var(--muted);font-weight:600}
.coast-panel .level-pick select{border-radius:6px;border-color:#d8d0c2;font-weight:500}
.coast-credit{position:relative;margin:0;padding:8px 48px 14px;font-size:10.5px;color:#d6e2e0}
.coast-credit a{color:#f3e9d8}
/* Métricas del mar */
.sea-metrics{background:var(--sand-soft);border-radius:8px}
.now-card .sea-metrics,.coast-panel .sea-metrics{background:#f4efe6}
.sea-metrics .k{color:#7a6a52;letter-spacing:1.2px}
.sea-metrics strong{color:var(--ocean);font-family:Outfit,Inter,Arial,sans-serif;font-weight:600}
.badge{background:#e9f1f0;color:var(--ocean);border-radius:4px}
.badge.ok{background:#e1efe6;color:#25603f}
.badge.info{background:#e7eff1;color:var(--ocean)}
.badge.warning{background:#f6ead2;color:#7a5413}
.badge.danger{background:#f3dfd8;color:#8a3a26}
.marine-caption{color:var(--muted)}
/* Secciones */
.home-section{margin:64px 0}
.section-head{align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:22px}
.section-head h2{font-size:34px;color:var(--ink)}
.note{font-size:13px;color:var(--muted);border-left:3px solid var(--sand);padding:4px 0 4px 14px;margin:0 0 18px}
.banner{background:#f6efe2;color:#5b4a2e}
.card{border-color:var(--line);border-radius:10px;box-shadow:0 1px 0 #00000005}
.card p{color:var(--muted)}
/* Personas */
.avatar{background:var(--ocean);box-shadow:none;font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-weight:600;border-radius:50%}
.avatar.school{background:var(--sand);border-radius:10px;box-shadow:none;color:#fff}
.person .eyebrow{color:var(--sea)}
.stars{color:#a97d2c}
/* Cómo funciona con foto */
.steps-band{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.steps-media{min-height:340px;background:var(--sand-soft)}
.steps-media img{width:100%;height:100%;object-fit:cover;display:block}
.steps{padding:40px 44px}
.steps h2{font-size:34px;margin:0 0 6px}
.steps ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;margin-top:22px}
.steps li{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:16px 0 0}
.steps li:before{background:transparent;color:var(--sand);border:1px solid var(--sand);width:30px;height:30px;font-size:13px;font-family:Outfit,Arial,sans-serif}
.steps strong{color:var(--ink);font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:18px;font-weight:600}
/* Tarjetas de playa */
.beach-card.featured{border:1px solid var(--sand);box-shadow:0 0 0 3px #c8a26b26}
.ribbon{background:var(--ocean);color:#f3e9d8;box-shadow:none;border-radius:4px;font-weight:600;letter-spacing:.5px}
.beach-photo figcaption{background:#f6f2ea;color:#6a6253}
.beach-photo figcaption a{color:var(--ocean)}
.beach-photo .photo-label{color:#4e4637}
.beach-card summary{color:var(--ocean)}
.tabs a[aria-current]{background:var(--ocean)}
.tide-list li{background:var(--sand-soft)}
.tide-list li.high strong{color:var(--ocean)}
.tide-list li.low strong{color:#7a5413}
footer{background:#fffdf9;border-top:1px solid var(--line)}
.vibe-strip,.hero-palm,.hero-sun,.photo-sticker,.vibe-sticker{display:none!important}
@media(max-width:1000px){.coast-inner{grid-template-columns:1fr;padding:40px 28px 24px;gap:22px}.coast-hero{min-height:0}.coast-credit{padding:6px 28px 14px}.steps-band{grid-template-columns:1fr}.steps-media{min-height:220px;max-height:260px}}
@media(max-width:550px){.coast-hero{border-radius:10px;margin-inline:-6px}.coast-inner{padding:150px 18px 18px}.coast-copy h1{font-size:54px}.coast-copy .lead{font-size:15px}.coast-panel{padding:14px 14px 4px}.steps{padding:28px 20px}.steps ol{grid-template-columns:1fr}.section-head h2,.steps h2{font-size:27px}.brand span{font-size:19px}.coast-hero .hero-actions .button{width:100%;text-align:center}}
.beach-photo{background:var(--sand-soft)}
.coast-media:after{background:linear-gradient(180deg,#0b2a3300 0%,#0b2a331f 40%,#0b2a33c7 100%),linear-gradient(90deg,#0b2a33a6 0%,#0b2a3300 62%)}
@media(max-width:550px){header{gap:8px;padding:12px 14px}#identity .enter{padding:9px 13px;font-size:12px}#menu-toggle{margin-left:0;padding:9px 12px;font-size:12px}.brand-mark{width:32px;height:32px}.brand span{font-size:18px}.brand small{font-size:8.5px;letter-spacing:1.5px}}

/* ===================== Tema "Celeste" v1.2 — celestes intensos, playero ===================== */
:root{--sky:#00a8e8;--sky-2:#0090d6;--deep:#0068b3;--navy:#063b5c;--aqua:#00c6d7;--foam:#e6f7ff;--sand:#ffd98a;--sand-soft:#fff6e3;--coral:#ff8a5b;--paper:#f4fbff;--line:#cfeaf8;--muted:#4f6f86;--ink:#063b5c;--ocean:#0068b3;--sea:#0090d6;--green:#0090d6;--border:#cfeaf8;color:var(--ink);background:var(--paper)}
body{background:linear-gradient(180deg,#f4fbff 0%,#ffffff 40%,#f4fbff 100%)}
h1,h2,h3,.brand span{font-family:Outfit,Inter,Arial,sans-serif;font-weight:800;letter-spacing:-.6px}
.eyebrow,.kicker{color:var(--sky-2);font-weight:700}
header{background:#ffffffee;backdrop-filter:blur(8px);border-bottom:3px solid var(--sky)}
.brand span{color:var(--deep);font-size:23px}
.brand-mark circle{fill:var(--sky)}
nav a{color:var(--navy)}
nav a:hover{background:var(--foam)}
nav a[aria-current]{color:#fff;background:var(--sky);box-shadow:none;border-radius:30px}
#identity .enter{background:var(--coral);border-radius:30px}
#identity .enter:hover{background:#f36d3b}
button,.button{background:var(--sky);border-radius:30px;font-weight:700}
button:hover,.button:hover{background:var(--deep)}
.quiet{background:#fff;color:var(--deep);border-color:#9fdaf5}
.quiet:hover{background:var(--foam)}
.text-link{color:var(--deep);border-bottom:2px solid var(--sky)}
button.as-button{background:none;border-radius:0;padding:0 0 2px;font-size:14px}
button.as-button:hover{background:none;color:var(--sky-2)}
/* Hero celeste */
.coast-hero{border-radius:22px;background:var(--sky)}
.coast-media img{filter:saturate(1.25) contrast(1.05) brightness(1.05)}
.coast-media:after{background:linear-gradient(180deg,#00a8e800 0%,#0090d633 40%,#004f8ad9 100%),linear-gradient(90deg,#0068b3cc 0%,#00a8e800 62%)}
.coast-copy .kicker{color:var(--sand)}
.coast-copy h1{font-size:clamp(56px,7.5vw,104px);letter-spacing:-2.5px;text-shadow:0 4px 24px #00365e55}
.coast-hero .hero-actions .button:not(.ghost){background:var(--sand);color:var(--navy)}
.coast-hero .hero-actions .button:not(.ghost):hover{background:#fff}
.button.ghost{border-color:#fff;border-width:2px}
.coast-panel{border-radius:18px;background:#fffffff5;border-top:5px solid var(--aqua)}
.coast-panel .now-title{font-family:Outfit,Inter,Arial,sans-serif;font-weight:800}
.coast-credit{color:#e3f6ff}
.coast-credit a{color:var(--sand)}
.sea-metrics,.now-card .sea-metrics,.coast-panel .sea-metrics{background:var(--foam);border-radius:12px}
.sea-metrics .k{color:var(--sky-2)}
.sea-metrics strong{color:var(--deep);font-weight:800}
.badge.ok{background:#d6f7e8;color:#0b7a4b}
.badge.info{background:#dff3ff;color:var(--deep)}
.badge.warning{background:#fff0c9;color:#8a5a00}
.section-head{border-bottom:2px dashed #b9e6fa}
.section-head h2{font-size:36px;color:var(--navy)}
.card{border-color:var(--line);border-radius:16px;box-shadow:0 6px 18px #0090d612}
.note{border-left-color:var(--sky)}
.banner{background:var(--sand-soft);color:#6b4e12}
.avatar{background:linear-gradient(135deg,var(--sky),var(--aqua));font-family:Outfit,Arial,sans-serif;font-weight:800}
.avatar.school{background:linear-gradient(135deg,var(--coral),#ffb35c)}
.beach-card.featured{border:2px solid var(--sky);box-shadow:0 10px 26px #00a8e833}
.ribbon{background:var(--coral);color:#fff;border-radius:30px}
.beach-photo figcaption{background:var(--foam);color:#3f6178}
.beach-photo{background:var(--foam)}
.tabs a[aria-current]{background:var(--sky)}
.tide-list li{background:var(--foam)}
footer{background:var(--navy);color:#bfe6fb;border:0}
footer a{color:var(--sand)}
.steps-band{background:#fff;border:0;border-radius:22px;box-shadow:0 10px 30px #0090d61a}
.steps h2,.steps strong{font-family:Outfit,Inter,Arial,sans-serif;font-weight:800}
.steps li{border-top:2px solid var(--line)}
.steps li:before{background:var(--sky);color:#fff;border:0}
/* Pronóstico por día */
.forecast-band{background:linear-gradient(180deg,#00a8e8 0%,#0090d6 100%);color:#fff;border-radius:22px;padding:34px 34px 30px;position:relative;overflow:hidden}
.forecast-band:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:40px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40' preserveAspectRatio='none'%3E%3Cpath d='M0 20 Q150 0 300 20 T600 20 T900 20 T1200 20 V40 H0Z' fill='%2300c6d7' opacity='.45'/%3E%3C/svg%3E") repeat-x;background-size:600px 40px;pointer-events:none}
.forecast-band .section-head{border-bottom-color:#ffffff66}
.forecast-band h2,.forecast-band .kicker{color:#fff}
.forecast-band .kicker{color:var(--sand)}
.forecast-band .muted{color:#e3f6ff}
.forecast-band .text-link,.forecast-band button.as-button{color:#fff;border-bottom-color:var(--sand)}
.days{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px;position:relative;z-index:1}
.day{background:#fff;color:var(--ink);border-radius:16px;padding:18px;box-shadow:0 8px 20px #00365e26}
.day.today{outline:3px solid var(--sand)}
.day header{all:unset;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.day-name{font-weight:800;font-size:18px;text-transform:capitalize;color:var(--navy)}
.day-date{font-size:12px;color:var(--muted)}
.day-wave{margin:12px 0 10px}
.day-wave strong{display:block;font-size:30px;font-weight:800;color:var(--deep);letter-spacing:-.5px}
.day-wave span{font-size:12px;color:var(--muted)}
.day-facts{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:6px}
.day-facts li{display:flex;justify-content:space-between;font-size:13px;border-bottom:1px dashed var(--line);padding-bottom:5px}
.day-facts span{color:var(--muted)}
.day-facts b{color:var(--navy)}
.day-levels{display:flex;flex-wrap:wrap;gap:6px}
.lv{font-size:11px;font-weight:700;padding:4px 9px;border-radius:30px}
.lv.ok{background:#d6f7e8;color:#0b7a4b}
.lv.no{background:#eef3f6;color:#7a8d99}
.day-note{font-size:11px;color:var(--muted);margin:8px 0 0}
/* Por nivel */
.levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.level-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;box-shadow:0 6px 18px #0090d612;border-top:6px solid var(--aqua)}
.level-card.lv-intermediate{border-top-color:var(--sky)}
.level-card.lv-advanced{border-top-color:var(--deep)}
.level-top{display:flex;gap:14px;align-items:center}
.level-top h3{margin:0;font-size:22px;color:var(--navy)}
.level-top p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.level-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:24px;color:#fff;background:var(--aqua);flex-shrink:0}
.lv-intermediate .level-icon{background:var(--sky)}
.lv-advanced .level-icon{background:var(--deep)}
.level-now{display:flex;align-items:center;gap:10px;margin:16px 0 8px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px}
.level-tip{font-size:13.5px;color:var(--ink);margin:6px 0 12px}
.level-facts{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:13px;margin:0 0 16px;background:var(--foam);border-radius:12px;padding:12px}
.level-facts dt{font-weight:700;color:var(--sky-2)}
.level-card .button{margin-top:auto;text-align:center}
/* Glosario */
.glossary h2{font-size:30px;color:var(--navy)}
.gloss{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:14px}
.gloss div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.gloss dt{font-weight:800;color:var(--deep);margin-bottom:6px}
.gloss dd{font-size:13px;color:var(--muted);margin:0}
@media(max-width:1100px){.gloss{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.levels{grid-template-columns:1fr}}
@media(max-width:550px){.forecast-band{padding:24px 16px;border-radius:16px;margin-inline:-6px}.gloss{grid-template-columns:1fr}.section-head h2{font-size:28px}.day-wave strong{font-size:26px}}
/* v1.2 · mañana/tarde y panel por nivel */
.days{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.half{border-top:2px solid var(--foam);padding-top:12px;margin-top:12px}
.day header+.half{border-top:0;margin-top:8px;padding-top:4px}
.half-title{font-size:11px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--sky-2);margin:0 0 6px}
.half-title small{font-weight:600;letter-spacing:0;text-transform:none;color:var(--muted);font-size:11px;margin-left:4px}
.half-wave{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:2px 0 8px}
.half-wave strong{font-size:24px;font-weight:800;color:var(--deep);letter-spacing:-.4px}
.half-wave span{font-size:12px;color:var(--muted)}
.half .day-facts{margin-bottom:10px}
.half .lv{display:inline-block;line-height:1.35}
.empty-half p{font-size:12px;margin:0}
.q{letter-spacing:1px;white-space:nowrap}
.q0,.q1{color:#9aa9b3}.q2{color:#e0a100}.q3,.q4{color:#0b9a5c}.q5{color:#0068b3}
.level-tabs{display:inline-flex;background:var(--foam);border-radius:40px;padding:5px;gap:4px;margin:0 0 18px}
.level-tabs button{background:transparent;color:var(--deep);padding:10px 20px;border-radius:30px;font-size:14px}
.level-tabs button:hover{background:#ffffffaa}
.level-tabs button[aria-selected=true]{background:var(--sky);color:#fff;box-shadow:0 4px 12px #00a8e844}
.level-panel{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,2fr);gap:18px}
.lp-main,.lp-side{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 6px 18px #0090d612}
.lp-main{border-top:6px solid var(--aqua)}
.lp-main.lv-intermediate{border-top-color:var(--sky)}
.lp-main.lv-advanced{border-top-color:var(--deep)}
.lp-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}
.lp-head h3{font-size:24px;margin:0 0 4px;color:var(--navy)}
.lp-head p{margin:0;color:var(--muted);font-size:14px;max-width:520px}
.lp-head .level-now{margin:0}
.lp-items{margin:16px 0 4px;padding-left:20px;display:grid;gap:8px;font-size:14px}
.lp-items li::marker{color:var(--sky)}
.lp-actions{margin-top:16px}
.qrow{display:flex;gap:12px;flex-wrap:wrap;align-items:center;background:var(--foam);border-radius:14px;padding:12px 14px;margin-top:16px}
.qrow .half-title{width:100%;margin:0}
.qbox{display:flex;flex-direction:column;background:#fff;border-radius:10px;padding:8px 14px;min-width:140px}
.qbox span{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px}
.qbox b{font-size:18px}
.qbox small{font-weight:700;color:var(--navy)}
.win-list{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}
.win-list li{background:var(--foam);border-radius:12px;padding:10px 12px;display:grid;gap:2px}
.win-list strong{display:block;color:var(--navy);font-size:14px}
.win-list span{font-size:12.5px;color:var(--muted)}
@media(max-width:900px){.level-panel{grid-template-columns:1fr}}
@media(max-width:550px){.level-tabs{display:flex;width:100%}.level-tabs button{flex:1;padding:10px 8px;font-size:13px}.lp-main,.lp-side{padding:18px}}
.win-list strong::first-letter{text-transform:uppercase}
.side-tip{font-size:13.5px;background:var(--sand-soft);border-radius:12px;padding:12px 14px;color:#6b4e12}
