/* GovHub Batangas: Philippine holiday themes (v12b). Background only: every effect sits BEHIND text and cards
   (z-index:-1 inside an isolated host, or in the root stacking context), pointer-events:none, brand colours untouched. */
.th-bghost{isolation:isolate}
.th-bghost:not(.dhead):not(.phead):not(.app){position:relative}
.th-bgfx{position:absolute;left:0;top:0;z-index:-1;display:block;pointer-events:none}
.th-bgfx--page{position:fixed}
.th-web{position:absolute;top:0;z-index:-1;width:120px;height:120px;color:rgba(70,72,96,.30);pointer-events:none}
.th-web svg,.th-lion svg{display:block;width:100%;height:100%}
.th-web--l{left:0}.th-web--r{right:0;transform:scaleX(-1)}
.th-web--page{position:fixed;width:150px;height:150px}
.dhead>.th-web,.phead>.th-web,.hero>.th-web{color:rgba(255,255,255,.22);width:96px;height:96px}
.th-lion{position:absolute;z-index:-1;bottom:8px;left:0;width:84px;height:73px;pointer-events:none;animation:thLionX 22s ease-in-out infinite alternate;opacity:.9}
.th-lion__b{display:block;width:100%;height:100%;animation:thBob 1.1s ease-in-out infinite;transform-origin:50% 100%}
.th-lion--page{position:fixed;width:110px;height:95px;bottom:14px}
.dhead>.th-lion{bottom:auto;top:calc(var(--sat,0px) + 72px);width:52px;height:45px;opacity:.75;animation-name:thLionM;animation-duration:9s}
.phead>.th-lion{bottom:6px;width:48px;height:42px;opacity:.75}
.hero>.th-lion{width:96px;height:83px;bottom:18px}
.th-lion--still,.th-lion--still .th-lion__b{animation:none;left:auto;right:12px}
@keyframes thLionM{0%{left:52%}100%{left:calc(100% - 132px)}}
@keyframes thLionX{0%{left:2%}100%{left:calc(98% - 90px)}}
@keyframes thBob{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-6px) rotate(3deg)}}
.th-corner{position:absolute;z-index:-1;right:10px;bottom:10px;max-width:110px;max-height:110px;object-fit:contain;opacity:.92;pointer-events:none}
.th-corner--page{position:fixed;right:18px;bottom:18px;max-width:140px;max-height:140px}
.dhead>.th-corner,.phead>.th-corner{bottom:auto;top:50%;transform:translateY(-50%);right:8px;max-width:72px;max-height:72px;opacity:.85}
.th-host{position:relative;overflow:visible!important}
.th-deco svg,.th-greet__ic svg{display:block;width:100%;height:100%}
.th-deco{position:absolute;z-index:0;pointer-events:none;width:34px;height:40px;right:10px;bottom:calc(100% + 4px);filter:drop-shadow(0 3px 4px rgba(0,0,0,.18))}
.th-bghost>.th-deco{z-index:-1}
.th-deco--flag{width:46px;height:32px}.th-deco--lanterns{width:44px;height:42px}.th-deco--burst{width:36px;height:36px}.th-deco--hardhat{width:36px;height:30px}.th-deco--candle{width:24px;height:40px}
/* mobile headers: decoration in the empty space under the bell, behind everything */
.dhead>.th-deco,.phead>.th-deco{bottom:auto;top:calc(var(--sat,0px) + 64px);right:20px;width:40px;height:48px;opacity:.9}
.phead>.th-deco{top:auto;bottom:16px;right:18px;width:30px;height:36px}
.dhead>.th-deco--flag,.phead>.th-deco--flag{width:50px;height:34px}.dhead>.th-deco--lanterns{top:calc(var(--sat,0px) + 52px);width:52px;height:50px}
/* landing hero: next to the logo lockup */
.lockup>.th-deco{right:auto;left:calc(100% + 16px);bottom:4px;width:46px;height:56px}.lockup>.th-deco--flag{width:66px;height:46px}.lockup>.th-deco--lanterns{width:70px;height:66px;bottom:auto;top:-6px}.lockup>.th-deco--candle{width:30px;height:50px}
html.th-paused .th-lion,html.th-paused .th-lion__b,html.th-paused .th-deco *{animation-play-state:paused}
/* greeting */
.th-greet{position:fixed;z-index:60;right:16px;bottom:16px;max-width:min(360px,calc(100vw - 32px));display:flex;align-items:center;gap:10px;padding:9px 8px 9px 10px;border-radius:14px;background:rgba(255,255,255,.96);color:#0f1b33;box-shadow:0 14px 34px -14px rgba(11,42,99,.45),0 0 0 1px rgba(11,42,99,.08);border-left:4px solid var(--th-a,#0038a8);font:500 .8rem/1.3 Inter,system-ui,sans-serif;animation:thIn .35s ease-out;overflow:hidden}
.th-greet:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#0038a8 0 33.34%,#ce1126 33.34% 66.67%,#fcd116 66.67% 100%);opacity:.9}
.th-greet--nav{bottom:calc(92px + env(safe-area-inset-bottom,0px));left:12px;right:12px;margin:0 auto}
.th-greet__ic{width:30px;height:30px;flex:none;display:grid;place-items:center}
.th-greet__t{flex:1;min-width:0}.th-greet__t b{display:block;font-size:.84rem;font-weight:700}.th-greet__t small{display:block;color:#56657f;font-size:.74rem}
.th-greet__x{flex:none;width:28px;height:28px;border:0;border-radius:50%;background:#eef2f9;color:#33415c;font-size:1.1rem;line-height:1;cursor:pointer;display:grid;place-items:center}
.th-greet__x:hover{background:#e1e7f2}
.th-greet--out{opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}
@keyframes thIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* gentle motion (off for reduced motion / user setting) */
.th-deco--flag .th-wave{transform-origin:4px 16px;animation:thWave 2.6s ease-in-out infinite}
.th-deco--lanterns svg{transform-origin:50% 0;animation:thSway 4s ease-in-out infinite}
.th-deco--candle .th-flame{transform-origin:15px 17px;animation:thFlick 1.8s ease-in-out infinite}.th-deco--candle .th-glow{animation:thGlow 3s ease-in-out infinite}
@keyframes thWave{0%,100%{transform:skewY(0) scaleX(1)}50%{transform:skewY(-3deg) scaleX(.96)}}
@keyframes thSway{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
@keyframes thFlick{0%,100%{transform:scale(1)}40%{transform:scale(.92,1.06)}70%{transform:scale(1.04,.96)}}
@keyframes thGlow{0%,100%{opacity:.8}50%{opacity:1}}
html.th-still .th-deco *,html.th-still .th-greet,html.th-still .th-lion,html.th-still .th-lion__b{animation:none!important}
@media (prefers-reduced-motion:reduce){.th-lion,.th-lion__b,.th-deco *,.th-greet,.th-greet *{animation:none!important;transition:none!important}}
@media print{.th-bgfx,.th-web,.th-lion,.th-corner,.th-greet,.th-deco{display:none!important}}
/* staff console: Settings > Themes */
.thcard .thstatus{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.84rem;background:#f5f8fe;border:1px solid #e3e9f5;border-radius:12px;padding:8px 10px;margin-bottom:10px}
.thic{display:inline-grid;width:20px;height:20px;vertical-align:middle;place-items:center;flex:none}.thic svg{width:100%;height:100%}
.thmodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:8px}
.thmode{display:flex!important;width:auto!important;gap:8px;align-items:flex-start;border:1px solid #e3e8f2;border-radius:12px;padding:8px 10px;cursor:pointer;margin:0;font-weight:500}
.thmode.on{border-color:var(--blue,#0038a8);background:#f2f6ff;box-shadow:0 0 0 1px var(--blue,#0038a8) inset}
.thmode input{width:16px!important;height:16px!important;min-height:0!important;margin:2px 0 0!important;padding:0!important;flex:none;box-shadow:none!important}.thmode>span{flex:1;min-width:0}.thmode b{display:block;font-size:.84rem}.thmode small{display:block;font-size:.72rem;color:#5b6b8c;line-height:1.3}
.thtg .li{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid #edf1f7;margin:0;font-weight:500}.thtg .li>div{flex:1}.thtg .li b{display:block;font-size:.85rem}.thtg .li small{display:block;color:#5b6b8c;font-size:.74rem}
.thprev{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.thpbtn{display:flex;align-items:center;gap:7px;border:1px solid #e3e8f2;background:#fff;border-radius:10px;padding:6px 8px;font:600 .76rem/1.2 Inter,system-ui,sans-serif;color:#0f1b33;cursor:pointer;text-align:left}
.thpbtn:hover{border-color:#c5d3ee}.thpbtn.on{border-color:var(--blue,#0038a8);background:#f2f6ff}
.thname{display:inline-flex;align-items:center;gap:7px;font-weight:600}
.thtbl input[type=checkbox]{width:16px!important;height:16px!important;min-height:0!important;padding:0!important;margin:0!important}.thtbl td{vertical-align:middle;font-size:.8rem;padding-top:6px;padding-bottom:6px}.thmd{width:78px!important;height:30px!important;padding:5px 8px!important;font-size:.8rem!important;min-height:0!important}
@media (max-width:700px){.thmodes{grid-template-columns:1fr}}
.thnote{display:flex;gap:8px;align-items:flex-start;font-size:.78rem;line-height:1.4;margin:8px 0;padding:8px 10px;border-radius:10px;background:#fff8e1;border:1px solid #f6e3a1;color:#5c4a12}
.thnote svg{flex:none;margin-top:1px}
.thapply{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:8px 10px;border-radius:10px;background:#f2f6ff;border:1px solid #d6e2fb;font-size:.8rem}.thapply>span{flex:1;min-width:160px;display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}
.thimg{margin-top:12px}.thimgrow{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid #edf1f7}.thimgl{flex:1;min-width:0}.thimgl b{display:block;font-size:.84rem}.thimgl small{display:block;color:#5b6b8c;font-size:.74rem}
.thths{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.thth{position:relative;width:52px;height:52px;border-radius:10px;border:1px solid #e3e8f2;background:repeating-conic-gradient(#f3f5f9 0 25%,#fff 0 50%) 50%/12px 12px;display:grid;place-items:center}
.thth img{max-width:44px;max-height:44px;object-fit:contain;display:block}
.thx{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;border:0;background:#ce1126;color:#fff;display:grid;place-items:center;cursor:pointer;padding:0;box-shadow:0 2px 6px rgba(0,0,0,.2)}.thx svg{width:12px;height:12px}
.thadd{width:58px;height:52px;border-radius:10px;border:1.5px dashed #b9c7e3;color:#33415c;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer;font-size:.68rem;font-weight:600;margin:0!important;position:relative;overflow:hidden}
.thadd:hover{border-color:var(--blue,#0038a8);background:#f2f6ff}.thadd.busy{opacity:.5;pointer-events:none}
.thadd input{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}
.thimg .card__h select{width:auto!important;max-width:220px}
.thimg .card__h{flex-wrap:wrap}.thimg .card__h>div{flex:1 1 260px}
.greet>.th-lion{bottom:auto;top:12px;width:64px;height:56px;opacity:.8;animation-name:thLionM;animation-duration:12s}
.greet>.th-corner,.auth__art>.th-corner{bottom:auto;top:14px;right:14px;max-width:84px;max-height:84px}
.greet>.th-web,.auth__art>.th-web{color:rgba(255,255,255,.2);width:90px;height:90px}
.th-deco--custom img,.th-greet__ic img{display:block;width:100%;height:100%;object-fit:contain}
.dhead>.th-deco--custom{width:44px;height:44px}.phead>.th-deco--custom{width:34px;height:34px}.lockup>.th-deco--custom{width:56px;height:56px}.side__foot>.th-deco--custom{width:38px;height:38px}
.ahead>.th-deco,.auth__art>.th-deco{bottom:auto;top:calc(var(--sat,0px) + 22px);right:22px;width:40px;height:48px;opacity:.95}
.ahead>.th-deco--flag,.auth__art>.th-deco--flag{width:50px;height:34px}.ahead>.th-deco--custom,.auth__art>.th-deco--custom{width:44px;height:44px}
.auth__art>.th-deco{top:36px;right:36px;width:52px;height:60px}.auth__art>.th-deco--custom{width:56px;height:56px}
.thth--builtin svg{width:34px;height:34px;display:block}.thhide{display:inline-flex!important;align-items:center;gap:6px;margin:4px 0 0!important;font-size:.76rem;font-weight:500;cursor:pointer}.thhide input{width:15px!important;height:15px!important;min-height:0!important;margin:0!important;padding:0!important}
.th-bgfx--dom{overflow:hidden}.th-spr{position:absolute;left:0;top:0;height:auto;max-width:none;pointer-events:none;will-change:transform;user-select:none}
.th-deco--sized svg,.th-deco--sized img{height:auto!important}
.thsz{border-top:1px dashed #e3e8f2;padding:6px 0 8px;margin-top:-2px}
.thszh{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.thszh b{font-size:.78rem;color:#33415c}.thszh select{width:auto!important;min-width:170px;height:32px!important;padding:4px 8px!important;font-size:.78rem!important;min-height:0!important}.thszh .btn{margin-left:auto}
.thszm{display:flex;gap:12px;align-items:center;margin-top:8px;flex-wrap:wrap}.thszc{flex:1 1 240px;min-width:0;display:grid;gap:4px}
.thszf{display:grid!important;grid-template-columns:96px 1fr 62px 18px;align-items:center;gap:6px;margin:0!important;font-size:.74rem;font-weight:500}
.thszf input[type=range]{width:100%!important;padding:0!important;height:20px!important;min-height:0!important;box-shadow:none!important;border:0!important;background:none!important;accent-color:var(--blue,#0038a8)}
.thszf .thszn{width:62px!important;height:28px!important;padding:3px 6px!important;font-size:.76rem!important;min-height:0!important}.thszf em{font-style:normal;color:#5b6b8c}
.thszmob{display:flex!important;align-items:center;gap:6px;font-size:.74rem;font-weight:500;margin:2px 0 0!important}.thszmob input{width:15px!important;height:15px!important;min-height:0!important;margin:0!important;padding:0!important}.thszmob small{color:#5b6b8c}
.thszmf{display:grid;gap:4px}.thszmf[hidden],.thszm[hidden]{display:none!important}
.thszp{flex:none;width:170px;min-height:84px;border-radius:12px;border:1px solid #e3e8f2;background:linear-gradient(160deg,#0b2a63,#123c8c);display:flex;align-items:center;justify-content:center;gap:10px;padding:8px;overflow:hidden}
.thszp>span{display:block;flex:none;max-width:150px}.thszp img,.thszp svg{display:block;width:100%;height:auto}.thszph{color:#fff;font-size:22px;text-align:center}
