.festival-invite{right:max(17px,env(safe-area-inset-right));bottom:calc(max(16px,env(safe-area-inset-bottom)) + 106px);z-index:44;cursor:pointer;background:radial-gradient(circle at 35% 20%,#fffbed,#f4e3bd);border:1px solid #e1c793;border-radius:50%;place-items:center;width:46px;height:46px;transition:transform .2s;display:grid;position:fixed;box-shadow:0 4px 16px #4936121c}.festival-invite:hover{transform:translateY(-3px)}.festival-invite:focus-visible{outline-offset:3px;outline:3px solid #2455ed}.festival-invite img{object-fit:contain;width:43px;height:43px}.festival-invite>span{color:#b77c16;font-size:16px;position:absolute;bottom:0;right:-2px}.festival-game-dialog{height:min(900px,100dvh - 28px);flex-direction:column!important;gap:0!important;width:min(1440px,100vw - 28px)!important;max-width:1440px!important;padding:0!important;display:flex!important;overflow:hidden!important}.festival-game-dialog>div:first-child{flex:none;padding:13px 60px 11px 20px}.festival-game-dialog h2{font-size:18px}.festival-game-dialog iframe{background:#071b2d;border:0;flex:1;width:100%;height:100%;min-height:0}.festival-game-dialog>button{z-index:3}@media (max-width:600px){.festival-invite{right:68px;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 3px);width:42px;height:42px}.festival-invite img{width:39px;height:39px}.festival-game-dialog{height:100dvh;border-radius:0!important;width:100vw!important;max-width:100vw!important}.festival-game-dialog>div:first-child{padding-top:10px;padding-bottom:8px}.festival-game-dialog h2{font-size:15px}.festival-game-dialog [data-slot=dialog-description]{display:none}}@media (prefers-reduced-motion:reduce){.festival-invite{transition:none}.festival-invite:hover{transform:none}}.tims-seasonal-costume[data-season=loy_krathong],.tims-seasonal-costume[data-season=songkran],.tims-seasonal-costume[data-season=bun_bang_fai],.tims-seasonal-costume[data-season=phi_ta_khon],.tims-seasonal-costume[data-season=candle_festival],.tims-seasonal-costume[data-season=lai_ruea_fai],.tims-seasonal-costume[data-season=wapi_long_drum],.tims-seasonal-costume[data-season=mancha_orchid]{inset:0!important}.tims-seasonal-costume>img{object-fit:contain}html:root body .app-dialog.festival-game-dialog[data-workspace-dialog][role=dialog][data-slot=dialog-content][data-dialog-mode]{--tims-dialog-width:1440px;width:calc(100vw - 32px)!important;max-width:1440px!important;height:min(900px,calc(var(--tims-viewport-height,100dvh) - 32px))!important;max-height:calc(var(--tims-viewport-height,100dvh) - 32px)!important;flex-direction:column!important;gap:0!important;padding:0!important;display:flex!important;inset:16px 0 auto!important;overflow:hidden!important}@media (max-width:600px){html:root body .app-dialog.festival-game-dialog[data-workspace-dialog][role=dialog][data-slot=dialog-content][data-dialog-mode]{width:100vw!important;max-width:100vw!important;height:var(--tims-viewport-height,100dvh)!important;max-height:var(--tims-viewport-height,100dvh)!important;border-radius:0!important;inset:0!important}}.tiis-seasonal-layer{z-index:3;contain:layout style;isolation:isolate;position:absolute;inset:0;pointer-events:none!important}.tiis-seasonal-layer *{box-sizing:border-box;pointer-events:none!important}.tiis-seasonal-badge{aspect-ratio:1;filter:drop-shadow(0 2px 3px #12244730);width:clamp(22px,28%,40px);position:absolute;bottom:8%;right:0}.tiis-seasonal-badge svg{width:100%;height:100%;display:block}.tiis-seasonal-snow{border-radius:30%;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 15% 80%,#0000);mask-image:linear-gradient(#0000,#000 15% 80%,#0000)}.tiis-seasonal-snow i{top:-8px;left:var(--flake-x);opacity:.75;width:4px;height:4px;animation:tiis-seasonal-fall var(--flake-duration) linear var(--flake-delay) infinite;background:#fff;border-radius:50%;position:absolute;box-shadow:0 0 2px #7d9acb}@keyframes tiis-seasonal-fall{0%{transform:translate(0,0)}to{transform:translate3d(var(--flake-drift),155px,0)}}body.tino-motion-paused .tiis-seasonal-snow,.tiis-seasonal-layer[data-motion=off] .tiis-seasonal-snow{display:none}:is(body:has(dialog[open]) .tiis-seasonal-snow,body:has([role=dialog]) .tiis-seasonal-snow,body:has(input:focus,textarea:focus,[contenteditable=true]:focus) .tiis-seasonal-snow){visibility:hidden}@media (pointer:coarse),(max-width:600px){.tiis-seasonal-snow i:nth-child(n+5){display:none}}@media (prefers-reduced-motion:reduce){.tiis-seasonal-snow{display:none!important}.tiis-seasonal-snow i{animation:none!important}}@media print{.tiis-seasonal-layer,.tiis-seasonal-front-preferences{display:none!important}}.tiis-seasonal-front-preferences{font:inherit;color:inherit;border-top:1px solid #ccd5e3;padding:10px 12px;font-size:13px}.tiis-seasonal-front-preferences summary{cursor:pointer;align-items:center;gap:8px;min-height:32px;font-weight:600;display:flex}.tiis-seasonal-front-preferences label{align-items:center;gap:10px;margin:8px 0;line-height:1.5;display:flex}.tiis-seasonal-front-preferences input[type=checkbox]{-webkit-appearance:auto!important;appearance:auto!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;margin:0!important}.tiis-seasonal-front-preferences small{opacity:.8;line-height:1.6;display:block}.seasonal-settings{min-width:0;padding:16px}.seasonal-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.seasonal-heading h2{align-items:center;gap:8px;display:flex}.seasonal-heading p,.seasonal-settings small,.seasonal-settings p{color:var(--muted-foreground);font-size:13px;line-height:1.6}.seasonal-columns{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;margin-top:16px;display:grid}.seasonal-columns>div{min-width:0}.seasonal-preview-options{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.seasonal-preview{border:1px solid var(--border);background:var(--background);border-radius:16px;align-items:center;gap:18px;min-height:170px;padding:14px;display:flex;overflow:hidden}.seasonal-preview.halloween{background:linear-gradient(120deg,#fba33f12,#0000)}.seasonal-preview.new_year{background:linear-gradient(120deg,#769dd51a,#efc65d0d)}.seasonal-preview-mascot{flex:none;width:112px;height:130px;position:relative}.seasonal-preview-mascot img{object-fit:contain;width:100%;height:100%}.seasonal-preview small{align-items:center;gap:6px;display:flex}.seasonal-preview strong{margin-top:5px;font-size:18px;display:block}.seasonal-preview p{margin:6px 0 0}.seasonal-local{border:1px solid var(--border);border-radius:12px;min-width:0;margin:14px 0 0;padding:12px}.seasonal-local legend{align-items:center;gap:6px;padding:0 6px;font-size:13px;font-weight:600;display:flex}.seasonal-local label{justify-content:space-between;align-items:center;gap:12px;min-height:38px;font-size:14px;display:flex}.seasonal-local small{color:var(--muted-foreground);margin-top:5px;font-size:12px;line-height:1.6;display:block}.seasonal-settings input[type=checkbox],.seasonal-local input[type=checkbox]{accent-color:var(--primary);flex:0 0 16px;-webkit-appearance:auto!important;appearance:auto!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;margin:0!important;padding:0!important}.seasonal-settings form fieldset{border:0;min-width:0;margin:0;padding:0}.seasonal-settings form legend{margin-bottom:8px;font-size:14px;font-weight:600}.seasonal-targets{flex-wrap:wrap;gap:12px;margin:6px 0 14px;display:flex}.seasonal-targets label,.seasonal-checkbox,.seasonal-schedule-title{align-items:center;gap:8px;min-height:32px;font-size:14px;display:flex}.seasonal-schedule{border-top:1px solid var(--border);padding:9px 0}.seasonal-schedule-title{font-weight:600}.seasonal-dates{grid-template-columns:1fr 1fr;gap:10px;display:grid}.seasonal-dates label,.seasonal-reason{gap:5px;min-width:0;font-size:12px;display:grid}.seasonal-settings input:not([type=checkbox]){border:1px solid var(--border);background:var(--background);width:100%;min-width:0;color:var(--foreground);font:inherit;border-radius:8px;padding:7px 10px;font-size:14px}.seasonal-reason{margin-top:12px}.seasonal-save{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.seasonal-message{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:8px;padding:8px 12px}.seasonal-message.error{color:#b44732}.seasonal-history{border-top:1px solid var(--border);padding-top:8px;font-size:13px}.seasonal-history summary{cursor:pointer;min-height:32px}.seasonal-history p{overflow-wrap:anywhere}.seasonal-settings button{white-space:normal;max-width:100%;height:auto;min-height:32px;line-height:1.5}@media (max-width:900px){.seasonal-columns{grid-template-columns:1fr;gap:16px}}@media (max-width:420px){.seasonal-settings{padding:12px}.seasonal-preview{gap:12px;padding:10px}.seasonal-preview-mascot{width:84px;height:98px}.seasonal-preview strong{font-size:16px}.seasonal-heading{flex-wrap:wrap}.seasonal-save{align-items:flex-end}}button.tims-switch[data-slot=switch]{width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;box-shadow:none;cursor:pointer;vertical-align:middle;touch-action:manipulation;border:0;border-radius:8px;flex:0 0 44px;place-items:center;padding:0;display:inline-grid;position:relative;background:0 0!important}button.tims-switch .tims-switch-track{box-sizing:border-box;background:var(--input,#cbd5e1);pointer-events:none;border-radius:999px;align-items:center;width:40px;height:24px;padding:3px;transition:background-color .15s;display:flex}button.tims-switch[data-state=checked] .tims-switch-track{background:var(--primary,#2455ed)}button.tims-switch .tims-switch-thumb{pointer-events:none;background:#fff;border-radius:50%;flex:none;width:18px;height:18px;transition:transform .15s;display:block;transform:translate(0);box-shadow:0 1px 2px #0003}button.tims-switch[data-state=checked] .tims-switch-thumb{transform:translate(16px)}button.tims-switch[data-size=sm] .tims-switch-track{width:32px;height:20px}button.tims-switch[data-size=sm] .tims-switch-thumb{width:14px;height:14px}button.tims-switch[data-size=sm][data-state=checked] .tims-switch-thumb{transform:translate(12px)}button.tims-switch:focus-visible{outline:2px solid var(--ring,#2455ed);outline-offset:2px}button.tims-switch:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){button.tims-switch .tims-switch-track,button.tims-switch .tims-switch-thumb{transition:none}}
