/* Birdie Boo: the approved continuous blue-sky world. */
body[data-world="bolbol"]{--bb-navy:#00357d;--bb-yellow:#ffe31b;--ink:#00357d;--muted:#174d84;--green:#075da4;--accent:#075da4;background:#8bdef7 url('assets/bolbol-sky-background.webp') center top/100% 100% no-repeat;color:var(--bb-navy);font-family:Fredoka,Arial,sans-serif}
body[data-world="bolbol"] .demo-bar{display:none}
body[data-world="bolbol"] .fade-in{animation:none}
body[data-world="bolbol"] #header{position:absolute;inset:0 0 auto;background:none;border:0;box-shadow:none;z-index:10}
body[data-world="bolbol"] #main{min-height:0}
body[data-world="bolbol"] #footer{padding:0;border:0;background:none}
.bb-shell{width:min(100%,1440px);margin:0 auto;padding-inline:5.6%}
.bb-nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:clamp(74px,9.4vw,126px)}
.bb-brand{padding:0;border:0;background:none;flex:none}
.bb-brand .official-club-logo{width:clamp(155px,19vw,244px);height:auto;margin:0}
.bb-nav nav{display:flex;align-items:center;gap:clamp(17px,2.5vw,36px)}
.bb-nav-link,.bb-heart{border:0;background:none;color:#00357d;font:450 clamp(12px,1.45vw,18px)/1.2 Fredoka,sans-serif;min-height:44px;padding:8px 0}
.bb-nav-link:hover,.bb-footer-link:hover{text-decoration:underline;text-underline-offset:5px}
.bb-heart{display:grid;place-items:center;padding:8px}.bb-heart .bb-icon{width:clamp(26px,3.4vw,42px);height:auto;filter:invert(42%) sepia(98%) saturate(2321%) hue-rotate(316deg) brightness(101%) contrast(101%)}
.bb-heart[aria-pressed="true"]{background:#ffffff80;border-radius:50%}
.bb-icon{width:24px;height:24px;display:inline-block;vertical-align:middle;object-fit:contain;flex:none;filter:invert(15%) sepia(72%) saturate(2490%) hue-rotate(204deg) brightness(85%) contrast(107%)}
.bb-world h1,.bb-world h2,.bb-world h3,.bb-footer h2{font-family:Fredoka,Arial,sans-serif;font-weight:650;letter-spacing:-.025em;color:#00357d}
.bb-world p{color:#00357d}
.bb-hero{position:relative;min-height:min(55.6vw,800px);isolation:isolate;overflow:hidden}
.bb-hero-art{position:absolute;right:0;top:0;width:49%;height:auto;z-index:-1}
.bb-hero-copy{padding-top:14.7vw;padding-bottom:0;width:62%}
.bb-eyebrow{font-size:clamp(12px,1.55vw,20px);font-weight:450;letter-spacing:.13em;text-transform:uppercase;line-height:1.4;margin:0 0 12px}
.bb-hero h1{font-size:clamp(48px,6.35vw,88px);line-height:1.04;letter-spacing:-.035em;margin:0 0 14px}
.bb-hero-lead{font-size:clamp(22px,2.85vw,39px);line-height:1.2;font-weight:400;margin:0 0 20px}
.bb-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.bb-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:0;background:#ffe31b;color:#00357d;border-radius:60px;padding:13px 27px;min-height:48px;font:550 clamp(19px,2.3vw,29px)/1.1 Fredoka,sans-serif;text-decoration:none;cursor:pointer;transition:transform .15s,background .15s}
.bb-button:hover{background:#ffec58;transform:translateY(-2px)}.bb-button:active{transform:none}.bb-button:disabled{cursor:not-allowed;transform:none;opacity:.5}
.bb-button .bb-icon{width:24px;height:24px}
.bb-meet{display:inline-flex;align-items:center;gap:10px;border:0;background:none;padding:0;color:#00357d;font:450 clamp(15px,1.8vw,23px)/1.2 Fredoka,sans-serif;min-height:46px;white-space:nowrap}
.bb-play-ring{width:48px;height:48px;border:2px solid #00357d;border-radius:50%;display:grid;place-items:center}.bb-play-ring .bb-icon{width:25px;height:25px}
.bb-tour-link{display:flex;flex-direction:column;align-items:flex-start;gap:6px;border:0;background:none;color:#00357d;padding:12px 0 0;margin-top:8px;font:400 clamp(14px,1.6vw,20px)/1.2 Fredoka,sans-serif}
.bb-tour-link .bb-icon{transform:rotate(90deg);width:29px;height:29px}
.bb-activities{text-align:center;padding-top:0;padding-bottom:12px;scroll-margin-top:20px}
.bb-activities h2{font-size:clamp(36px,5.4vw,74px);line-height:1.08;margin:0 0 5px}
.bb-section-lead{font-size:clamp(19px,2.65vw,34px);line-height:1.25;margin:0}
.bb-shelf{margin-inline:-3%;margin-top:-20px}
.bb-shelf-art{display:block;width:100%;height:auto;margin:0 0 -18px}
.bb-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 3%}
.bb-activity h3{font-size:clamp(19px,2.25vw,31px);line-height:1.15;letter-spacing:-.025em;margin:0 0 3px;font-weight:600}
.bb-activity p{font-size:clamp(14px,1.8vw,23px);line-height:1.3;margin:0 0 8px}
.bb-button-small{font-size:clamp(17px,2.1vw,27px);padding:10px 23px;min-height:44px;gap:12px}
.bb-feature{display:grid;grid-template-columns:1.3fr .95fr;gap:3%;align-items:center;padding-block:22px}
.bb-watch{padding-inline:3.8%;margin-top:0}
.bb-window-art{border:0;background:none;padding:0;width:100%;position:relative;display:block}
.bb-window-art>img,.bb-craft-art{width:100%;height:auto;display:block}
.bb-window-play{position:absolute;left:51%;top:64%;transform:translate(-50%,-50%);width:clamp(60px,8vw,104px);height:clamp(60px,8vw,104px);display:grid;place-items:center;border-radius:50%;background:#fffffff0;transition:transform .15s}
.bb-window-play .bb-icon{width:45%;height:45%}.bb-window-art:hover .bb-window-play{transform:translate(-50%,-50%) scale(1.06)}
.bb-feature-copy h2{font-size:clamp(32px,4.25vw,59px);line-height:1.05;margin:0 0 15px;letter-spacing:-.025em}
.bb-feature-copy p{font-size:clamp(17px,2.1vw,28px);line-height:1.3;margin:0 0 18px}
.bb-feature-copy .bb-button{font-size:clamp(17px,2.15vw,28px);padding-inline:24px;gap:10px}
.bb-surprise{padding-top:5px;padding-bottom:15px;padding-inline:4.5%;grid-template-columns:1.3fr .95fr;gap:3%}
.bb-books{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding-top:12px;padding-bottom:26px}
.bb-book-copy .bb-eyebrow{font-size:clamp(12px,1.4vw,18px);margin-bottom:13px}
.bb-book-copy .bb-eyebrow span{display:block;font-size:10px;letter-spacing:.08em;margin-top:4px}
.bb-book-copy h2{font-size:clamp(35px,5vw,67px);line-height:1.05;margin:0 0 13px}
.bb-book-copy>p:not(.bb-eyebrow){font-size:clamp(21px,2.65vw,34px);line-height:1.3;margin:0 0 18px}
.bb-book-copy small{display:block;margin-top:12px;font-size:clamp(13px,1.6vw,20px)}
.bb-book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bb-book-cover{display:block;border:0;padding:0;background:none;transition:transform .15s;transform:rotate(-1deg)}.bb-book-cover:nth-child(even){transform:rotate(1deg)}.bb-book-cover:hover{transform:translateY(-4px)}
.bb-book-cover img{width:100%;height:auto;border-radius:5px;box-shadow:0 4px 8px #00357d20}
.bb-footer{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding-top:12px;padding-bottom:30px;color:#00357d}
.bb-footer h2{font-size:clamp(23px,2.7vw,36px);line-height:1.1;margin:0}
.bb-outline{display:inline-flex;align-items:center;gap:15px;min-height:44px;border:1.5px solid #00357d;background:transparent;border-radius:40px;padding:8px 25px;color:#00357d;font:400 17px/1.1 Fredoka,sans-serif}
.bb-outline:hover{background:#ffffff65}.bb-outline .bb-icon{width:20px;height:20px}
.bb-footer .official-club-logo{width:145px;margin-top:6px}.bb-footer-link{border:0;padding:5px 12px;background:none;font:400 16px/1.2 Fredoka,sans-serif;color:#00357d;min-height:36px}
body[data-world="bolbol"] #modal{font-family:Fredoka,Arial,sans-serif;color:#00357d;background:#f5fcff}
body[data-world="bolbol"] #modal h2,body[data-world="bolbol"] #modal h3{font-family:Fredoka,Arial,sans-serif;color:#00357d;font-weight:600;letter-spacing:-.025em}
body[data-world="bolbol"] #modal p{color:#31577d}
body[data-world="bolbol"] #modal .bb-button{font-size:18px;min-height:46px;padding:13px 22px}
body[data-world="bolbol"] #modal .bb-button .bb-icon{width:21px;height:21px}
body[data-world="bolbol"] #modal[data-kind="bb-game"]{width:min(760px,calc(100% - 28px))}
.bb-game-heading{display:flex;align-items:center;gap:20px}.bb-weather-icon{flex:none;width:100px;height:100px;display:grid;place-items:center;border-radius:28px;background:#def5ff}.bb-weather-icon .bb-icon{width:67px;height:67px}
.bb-game-kicker{font-size:11px;letter-spacing:.12em;font-weight:600;color:#34628b}.bb-game-heading h3{margin:4px 0 8px!important;font-size:27px!important}.bb-game-heading p{margin:0!important;font-size:15px!important}
.bb-pack-count{font-size:14px!important;margin:20px 0 10px!important;font-weight:500}
.bb-pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bb-pack-item{position:relative;border:2px solid #d1e7f3;border-radius:16px;padding:17px 6px 12px;background:#fff;color:#00357d;display:flex;flex-direction:column;align-items:center;gap:8px;min-height:122px;font:450 16px/1.2 Fredoka,sans-serif}
.bb-pack-item>.bb-icon{width:49px;height:49px}.bb-pack-item.is-selected{border-color:#0b6bb0;background:#e5f6ff}.bb-pack-item:disabled{opacity:1}.bb-selection-mark{position:absolute;right:5px;top:5px;display:none}.is-selected .bb-selection-mark{display:block}.bb-selection-mark .bb-icon{width:22px;height:22px}
.bb-game-message{margin-top:15px;padding:12px 15px;border-radius:12px;font-size:15px;background:#fff6cb;color:#674e11;min-height:47px}.bb-game-message.is-success{background:#d9f3dd;color:#205a37}
.bb-game-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:20px}.bb-text-button{border:0;background:none;color:#135484;min-height:44px;padding:8px 12px;text-decoration:underline;text-underline-offset:4px;font:400 14px/1.2 Fredoka,sans-serif}
.bb-complete{text-align:center}.bb-complete>img{height:190px;width:100%;object-fit:contain}.bb-complete h3{margin:8px 0 12px!important;font-size:27px!important}
.bb-day-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:20px 0}.bb-day-choice{display:flex;flex-direction:column;align-items:center;gap:8px;border:1px solid #c5e4f3;border-radius:14px;background:#fff;padding:12px 8px;color:#00357d;flex:1 1 100px;font:450 13px/1.3 Fredoka,sans-serif;min-height:96px}.bb-day-choice .bb-icon{width:35px;height:35px}.bb-day-choice:disabled{opacity:.35}
.bb-plan-heading{display:flex;justify-content:space-between;align-items:center;font-size:21px!important;margin:12px 0!important}.bb-plan-heading span{font-size:15px;font-weight:400}
.bb-day-path{list-style:none;padding:0;margin:0;display:grid;gap:8px}.bb-day-path li{display:flex;align-items:center;gap:10px;border:1px solid #c9e6f1;border-radius:12px;background:white;padding:8px 10px}.bb-day-path strong{font-size:16px;font-weight:500;flex:1}.bb-step-number{font-size:13px;color:#537798}.bb-day-path>li>.bb-icon{width:28px;height:28px}
.bb-path-tools{display:flex;gap:3px}.bb-path-tools button{border:0;background:#edf8fd;border-radius:8px;width:36px;height:40px;padding:7px}.bb-path-tools .bb-icon{width:21px;height:21px}
.bb-empty-path{padding:30px;border:1px dashed #9ac9dd;border-radius:12px;text-align:center}
.bb-routine-print{background:#fff;padding:25px!important;text-align:center}.bb-routine-print h3{font-size:28px!important;margin:0 0 8px!important}.bb-routine-print ol{text-align:left;list-style-position:inside;margin:28px auto;padding:0;max-width:420px}.bb-routine-print li{padding:13px;border-bottom:1px solid #bcd8e7;font-size:20px}.bb-routine-print .bb-icon{margin-inline:12px;width:28px;height:28px}.bb-writing-line{border-bottom:1px solid #adc6d6;min-height:36px;margin-bottom:25px}
.bb-season-sheet{padding:0!important;background:white!important}.bb-season-sheet img{width:100%;height:auto;max-height:68vh;object-fit:contain}.bb-print-help{font-size:13px!important;margin-top:16px!important}
.bb-weather-print{background:white;padding:25px!important;color:#153d62;text-align:center}.bb-print-title{display:flex;align-items:center;gap:20px;text-align:left}.bb-print-title>img{height:100px;width:100px;object-fit:contain}.bb-print-title h3{font-size:27px!important;margin:0 0 8px!important}.bb-print-title p{font-size:14px!important;margin-bottom:0!important}.bb-print-date{margin-top:18px!important;font-size:12px!important}.bb-weather-drawing{height:240px;border:1px solid #9bbdcf;margin:20px 0;display:grid;place-items:center;color:#a1b5c0;font-size:16px}.bb-print-weather-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0 25px}.bb-print-weather-options>div{display:grid;justify-items:center;gap:8px;font-size:14px}.bb-print-weather-options .bb-icon{width:42px;height:42px}.bb-weather-print small,.bb-routine-print small{font-size:12px}
.bb-tour-content{text-align:center}.bb-tour-content>img{width:100%;height:210px;object-fit:contain;margin-bottom:18px}.bb-tour-content h3{font-size:29px!important;margin:10px 0 12px!important}.bb-tour-content p{max-width:500px;margin:0 auto 20px!important}.bb-shop-preview{display:flex;align-items:center;gap:25px;margin:10px 0 20px}.bb-shop-preview>img{width:130px;height:auto}.bb-shop-preview h3{font-size:25px!important;margin:0 0 8px!important}
@media(min-width:1441px){.bb-hero{max-width:1600px;margin:auto;min-height:800px}.bb-hero-copy{padding-top:210px}.bb-hero-art{width:49%}}
@media(max-width:1050px) and (min-width:701px){.bb-hero-actions{gap:14px}.bb-button{padding:12px 24px;gap:12px}.bb-meet{font-size:16px}.bb-play-ring{width:44px;height:44px}.bb-hero-copy{width:65%}.bb-feature-copy .bb-button{padding-inline:19px}.bb-button-small{padding:10px 21px}.bb-book-grid{gap:10px}}
@media(max-width:700px){
 body[data-world="bolbol"]{background-size:auto 100svh;background-position:center top;background-attachment:fixed}
 body[data-world="bolbol"] #header{position:relative}
 .bb-shell{padding-inline:21px}.bb-nav{padding-top:15px;padding-bottom:6px;flex-wrap:wrap;justify-content:center;gap:4px}.bb-brand .official-club-logo{width:155px}.bb-nav nav{width:100%;justify-content:space-between;gap:9px}.bb-nav-link{font-size:14px}.bb-heart .bb-icon{width:27px}
 .bb-hero{min-height:0;display:flex;flex-direction:column}.bb-hero>.bb-shell{order:0;width:100%}.bb-hero-art{position:relative;order:1;width:91%;max-width:480px;margin:12px auto 0;right:auto;z-index:0}.bb-hero-copy{padding:25px 0 0;width:100%;text-align:center}.bb-eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:10px}.bb-hero h1{font-size:clamp(38px,10.8vw,58px);line-height:1.05;margin-bottom:14px}.bb-hero-lead{font-size:22px;line-height:1.25;margin-bottom:19px}.bb-hero-actions{justify-content:center;gap:16px}.bb-button{font-size:19px;padding:13px 23px;min-height:47px;gap:12px}.bb-meet{font-size:16px;gap:8px}.bb-play-ring{width:42px;height:42px}.bb-play-ring .bb-icon{width:22px;height:22px}.bb-tour-link{font-size:14px;align-items:center;margin:12px auto 0;padding-top:5px;gap:3px}.bb-tour-link .bb-icon{width:23px;height:23px}
 .bb-activities{padding-top:26px;padding-bottom:20px}.bb-activities h2{font-size:35px;max-width:390px;margin:0 auto 10px}.bb-section-lead{font-size:19px;max-width:320px;margin:auto}.bb-shelf{margin:5px -10px 0}.bb-shelf-art{margin-bottom:8px}.bb-activity-grid{grid-template-columns:1fr;gap:0;padding-inline:12px}.bb-activity{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:17px 0;border-bottom:1px solid #195f8c33}.bb-activity:last-child{border-bottom:0}.bb-activity h3{font-size:21px;margin-bottom:5px}.bb-activity p{font-size:15px;margin:0;max-width:190px}.bb-activity .bb-button-small{font-size:16px;min-width:128px;padding:12px 14px;gap:5px;flex:none}.bb-activity .bb-icon{width:19px;height:19px}
 .bb-feature{grid-template-columns:1fr;gap:17px;text-align:center;padding-top:20px;padding-bottom:26px}.bb-window-art{max-width:520px;margin:auto}.bb-window-play{width:65px;height:65px}.bb-feature-copy h2{font-size:36px;line-height:1.07;margin-bottom:13px}.bb-feature-copy p{font-size:20px;line-height:1.3;max-width:360px;margin:0 auto 18px}.bb-feature-copy .bb-button{font-size:19px;padding:14px 23px}.bb-craft-art{max-width:520px;margin:auto}.bb-desktop-break{display:none}
 .bb-books{grid-template-columns:1fr;gap:28px;padding-top:30px;padding-bottom:30px;text-align:center}.bb-book-copy .bb-eyebrow{font-size:13px;margin-bottom:14px}.bb-book-copy h2{font-size:39px;line-height:1.06;margin-bottom:13px}.bb-book-copy>p:not(.bb-eyebrow){font-size:22px;margin-bottom:20px}.bb-book-copy small{font-size:14px;margin-top:13px}.bb-book-grid{width:100%;max-width:470px;margin:auto;gap:14px}.bb-footer{padding-top:26px;padding-bottom:30px;gap:10px}.bb-footer h2{font-size:25px}.bb-footer .official-club-logo{width:140px}.bb-footer-link{font-size:14px}
 body[data-world="bolbol"] #modal .modal-head{padding:23px 20px 15px}body[data-world="bolbol"] #modal .modal-body{padding:0 20px 24px}body[data-world="bolbol"] #modal h2{font-size:25px}.bb-game-heading{gap:12px}.bb-weather-icon{width:64px;height:76px;border-radius:18px}.bb-weather-icon .bb-icon{width:45px;height:45px}.bb-game-heading h3{font-size:23px!important}.bb-game-heading p{font-size:14px!important}.bb-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bb-pack-item{min-height:105px;padding:14px 7px 10px;font-size:15px}.bb-pack-item>.bb-icon{width:40px;height:40px}.bb-game-actions{gap:8px}.bb-day-choice{flex-basis:85px;font-size:12px}.bb-day-path li{padding:7px;gap:7px}.bb-day-path strong{font-size:14px}.bb-day-path>li>.bb-icon{width:23px;height:23px}.bb-path-tools{gap:1px}.bb-path-tools button{width:30px;padding:5px}.bb-path-tools .bb-icon{width:20px;height:20px}.bb-routine-print,.bb-weather-print{padding:15px!important}.bb-routine-print li{font-size:17px;padding:10px}.bb-routine-print .bb-icon{margin-inline:6px;width:23px;height:23px}.bb-print-title{gap:8px}.bb-print-title>img{height:75px;width:75px}.bb-print-title h3{font-size:23px!important}.bb-print-weather-options{gap:5px}.bb-print-weather-options .bb-icon{width:34px;height:34px}.bb-weather-drawing{height:210px}.bb-shop-preview{gap:18px}.bb-shop-preview>img{width:100px}
}
@media(max-width:374px){.bb-shell{padding-inline:16px}.bb-hero-actions{gap:10px}.bb-hero-actions .bb-button{font-size:18px;padding:12px 20px}.bb-meet{font-size:15px}.bb-activity h3{font-size:19px}.bb-activity p{font-size:14px}.bb-activity .bb-button-small{font-size:15px;min-width:120px;padding:12px 11px}.bb-day-path strong{font-size:13px}.bb-path-tools button{width:27px}}
@media(min-width:1101px){.character-grid:has(article:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}.character-grid:has(article:nth-child(4)) .character-body{padding:20px}.character-grid:has(article:nth-child(4)) .character-body .actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.bb-world *,.bb-footer *{scroll-behavior:auto!important;transition:none!important}}
@media print{body[data-world="bolbol"]{background:white!important}.bb-season-sheet img{max-height:250mm;height:auto;width:100%;object-fit:contain}.bb-print-help,.bb-game-actions{display:none!important}.bb-weather-print,.bb-routine-print,.bb-season-sheet{padding:0!important}.bb-weather-drawing{height:115mm}.bb-print-weather-options .bb-icon{height:15mm;width:15mm}.bb-print-title h3{font-size:24pt!important}.bb-print-title p{font-size:12pt!important}.bb-routine-print li{font-size:19pt;padding:6mm 3mm}.bb-writing-line{min-height:20mm}.bb-print-date{font-size:11pt!important}.bb-weather-print p{font-size:12pt!important}}

@media(min-width:701px){.bb-surprise .bb-feature-copy h2{font-size:clamp(30px,3.8vw,55px)}}
