/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#4f5868;--muted:#9b9aaa;--aqua:#7bc9c1;--green:#95d7b5;--pink:#f5b8c8;--peach:#ffd2bb;--lavender:#c9c2ed;--cream:#fff6dc;--bg:#fff7fa}*{box-sizing:border-box}body{color:var(--ink);background:linear-gradient(135deg,#e8f7f4,#fbeaf0 48%,#eeeafa);margin:0;font-family:Arial,Noto Sans TC,sans-serif}button{font:inherit;cursor:pointer}.mobileApp{background:linear-gradient(#fff9fb,#f5fbfa 46%,#fff8ee);width:min(100%,540px);min-height:100vh;margin:auto;padding-bottom:128px;position:relative;box-shadow:0 0 55px #8a718128}.homeSticky{z-index:12;background:linear-gradient(#f9e9f0,#eef9f6 72%,#fff8ee);padding-bottom:8px;position:sticky;top:0;box-shadow:0 8px 20px #7d63741d}.homeSticky .appHero{box-shadow:none;position:relative;top:auto}.homeSticky .filters{z-index:1;margin:0 14px;position:relative;top:auto;box-shadow:0 4px 12px #92768610}.appHero{z-index:12;color:#fff;background:linear-gradient(110deg,#f5bfd0,#c9c5ee 50%,#9eddd3);border-bottom:2px solid #ffe0a3;height:66px;padding:14px;position:sticky;top:0;box-shadow:0 4px 14px #8e748522}.noAds,.settings{color:#59616f;background:#fffafc;border:0;border-radius:50px;height:42px;position:absolute;top:12px;box-shadow:0 3px 9px #79607030}.noAds{width:44px;font-weight:900;left:14px}.heroPlay{color:#fff;letter-spacing:.08em;text-shadow:0 2px #075965;z-index:2;background:linear-gradient(#1fcab5,#078f9d);border:3px solid #ffe68a;border-radius:24px;justify-content:center;align-items:center;gap:8px;min-width:112px;height:46px;padding:0 18px 0 12px;font-weight:1000;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 4px #9b6514,0 7px 13px #405c7760,inset 0 2px 4px #baffef}.heroPlay i{color:#087888;background:#ffd347;border-radius:50%;place-items:center;width:27px;height:27px;padding-left:2px;font-size:13px;font-style:normal;display:grid;box-shadow:inset 0 2px 2px #fff4ae,0 2px #9a6517}.heroPlay:active{transform:translate(-50%,3px);box-shadow:0 1px #9b6514,0 3px 7px #405c7750,inset 0 2px 4px #baffef}.heroPlay:focus-visible{outline-offset:2px;outline:3px solid #fff}.settings{width:42px;font-size:20px;right:14px}.pageBody{padding:14px}.filters{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffafdcc;border:1px solid #f0e4e9;border-radius:16px;margin-bottom:13px;display:flex;position:sticky;top:74px;overflow:hidden;box-shadow:0 5px 14px #92768612}.filters button{color:#aaa6b1;background:0 0;border:0;flex:1;padding:12px 2px}.filters button.on{color:#5eafa9;background:linear-gradient(#ffffff80,#eaf9f6);border-bottom:3px solid #8bd2c9;font-weight:900}.levelGrid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.levelCard{aspect-ratio:1;background:#fff;border:3px solid #fff;border-radius:20px;padding:0;position:relative;overflow:hidden;box-shadow:0 5px 15px #9a7b8c1c}.levelCard img{object-fit:cover;width:100%;height:100%}.levelCard.locked img{filter:blur(3px)saturate(.55);opacity:.48}.levelNo{color:#a47761;background:#fffaf0e8;border-radius:20px;padding:4px 7px;font-size:11px;position:absolute;bottom:7px;left:8px;box-shadow:0 2px 7px #8c6e7a20}.levelCard em{color:#a87b00;background:#fff;border-radius:20px;padding:3px 6px;font-size:11px;font-style:normal;position:absolute;bottom:8px;right:8px}.banner{color:#807983;z-index:5;background:#fffafc;border-top:1px solid #f1dfe6;width:min(100%,540px);height:48px;padding:10px 14px;position:fixed;bottom:66px;left:50%;transform:translate(-50%)}.banner button{float:right;color:#fff;background:#e7a9bb;border:0;border-radius:16px;padding:5px 15px}.bottomNav{z-index:5;background:#fffafd;border-top:1px solid #efdee5;width:min(100%,540px);height:68px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -5px 18px #846d7814}.bottomNav button{color:#aaa5b0;background:0 0;border:0;flex:1;place-items:center;font-size:21px;display:grid}.bottomNav span{margin-top:-12px;font-size:12px;display:block}.bottomNav button.on{color:#6bbeb8;background:#f0fbf8}.decorCarousel{background:linear-gradient(145deg,#eaf9f5,#fff1f6 52%,#fff5db);padding:12px 0 6px;overflow:hidden}.decorTrack{grid-template-columns:8% 80% 8%;align-items:center;gap:2%;width:100%;animation:.58s cubic-bezier(.22,.75,.25,1) decorSlideIn;display:grid}.decorTrack.single{grid-template-columns:min(88%,480px);justify-content:center}.decorTrack button{opacity:.6;cursor:pointer;background:#fff;border:3px solid #fff;border-radius:18px;min-width:0;padding:0;transition:opacity .3s,transform .3s;overflow:hidden;transform:scale(.91);box-shadow:0 6px 18px #98788a24}.decorTrack button.current{opacity:1;cursor:default;transform:scale(1)}.decorTrack button.previous{border-left:0;border-radius:0 18px 18px 0}.decorTrack button.next{border-right:0;border-radius:18px 0 0 18px}.decorTrack img{aspect-ratio:2;object-fit:cover;width:100%;display:block}.decorTrack button.previous img{width:900%;max-width:none;transform:translate(-88.9%)}.decorTrack button.next img{width:900%;max-width:none}.decorDots{justify-content:center;gap:6px;margin-top:9px;display:flex}.decorDots button{background:#dbc8d4;border:0;border-radius:50%;width:7px;height:7px;padding:0}.decorDots button.active{background:#80cbc3;border-radius:8px;width:18px}@keyframes decorSlideIn{0%{opacity:.72;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.bannerManager{background:#fff;border-radius:22px;margin:16px 0;padding:22px;box-shadow:0 7px 22px #17304213}.bannerManagerHead small{color:#08a5ae;font-weight:900}.bannerManagerHead h2{margin:4px 0}.bannerManagerHead p{color:#789098;margin:4px 0 16px}.bannerUploader{grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;display:grid}.bannerUploader label{color:#315466;gap:6px;font-weight:800;display:grid}.bannerUploader input{border:1px solid #bfd7dc;border-radius:12px;padding:11px}.bannerFile input{background:#edfafd;padding:8px}.bannerFile span{color:#82979d;font-size:12px}.bannerUploader>button{color:#fff;background:#11b789;border:0;border-radius:14px;padding:13px 18px;font-weight:900}.bannerManagerStatus{color:#087955;background:#e9fff6;border-radius:12px;padding:10px 14px}.bannerAdminGrid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;display:grid}.bannerAdminGrid article{border:1px solid #d8e5e7;border-radius:14px;overflow:hidden}.bannerAdminGrid img{aspect-ratio:2;object-fit:cover;width:100%;display:block}.bannerAdminGrid article div{justify-content:space-between;align-items:center;gap:8px;padding:9px;display:flex}.bannerAdminGrid article button{color:#c92f42;white-space:nowrap;background:#ffeaed;border:0;border-radius:10px;align-items:center;gap:5px;padding:8px 11px;font-weight:900;display:inline-flex;box-shadow:inset 0 0 0 1px #f6c1c8}.bannerAdminGrid article button:hover{background:#ffdbe0}.bannerAdminGrid article button:disabled{opacity:.55}.bannerAdminGrid .adminEmpty{grid-column:1/-1}@media (width<=700px){.bannerUploader,.bannerAdminGrid{grid-template-columns:1fr}.bannerAdminGrid article b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}}.bannerFile:after{content:"建議尺寸：1200 × 600 px（2:1 橫式）・JPG／PNG／WebP・10MB 以內";color:#178797;font-size:12px;font-weight:600}.daily h2{text-align:center;margin:5px}.daily>p{text-align:left;color:#8ea1a6}.dailyMonthNav{justify-content:center;align-items:center;gap:18px;margin:12px 0;display:flex}.dailyMonthNav strong{text-align:center;color:#173f52;min-width:130px}.dailyMonthNav button{color:#10a8bd;background:#fff;border:0;border-radius:50%;width:38px;height:38px;font-size:24px;box-shadow:0 2px 8px #17304218}.dailyMonthNav button:disabled{opacity:.28}.calendar{grid-template-columns:repeat(8,1fr);gap:9px;display:grid}.calendar button{aspect-ratio:1;color:#fff;text-shadow:0 1px 3px #000;background:#fff 50%/cover no-repeat;border:0;border-radius:11px;font-weight:900;position:relative;overflow:hidden;box-shadow:0 2px 7px #17304212}.calendar button.done{color:#fff;outline:3px solid #48d19a;font-size:20px;box-shadow:inset 0 0 0 999px #1abf7330,0 2px 7px #17304222}.calendar button.today{outline:3px solid #7fe8bd}.calendar button.future{color:#4d5558;filter:none;text-shadow:none;background:#e4eaec}.calendar button:disabled:not(.future){opacity:.58}.calendar button.empty{color:#0000;background:#fff;box-shadow:0 2px 7px #1730420c;opacity:.7!important}.calendar button.fogged{color:#fff;text-shadow:0 1px 4px #263b40;outline:none;box-shadow:inset 0 0 13px 6px #eaf1f1c7,0 2px 7px #17304220}.calendar button.fogged:after{content:"";filter:blur(4px);opacity:.78;pointer-events:none;background:radial-gradient(circle at 28% 35%,#f4f6f2e8 0 18%,#0000 42%),radial-gradient(circle at 72% 68%,#9fadb0dc 0 20%,#0000 45%),linear-gradient(135deg,#afbabbbd,#eef1efb8 48%,#89999dcc);position:absolute;inset:-10%}.dailyNote{text-align:center;background:#fff;border-radius:20px;margin-top:24px;padding:20px}.dailyNote b,.dailyNote span{margin:5px;display:block}.dailyNote span{color:#899ca2}.dailyNote button{background:var(--green);color:#fff;border:0;border-radius:16px;margin-top:12px;padding:11px 20px;font-weight:900}.journey{text-align:center;background:#fff;border-radius:24px;padding:35px 20px}.journey>div{font-size:65px}.journey p,.journey small{color:#8ca0a6}.achievementPage{gap:14px;display:grid}.achievementTitle{color:#fff;background:linear-gradient(135deg,#097e84,#13b9a5);border-radius:20px;justify-content:space-between;align-items:center;padding:18px;display:flex}.achievementTitle small{letter-spacing:.14em;color:#bff8ec;font-size:10px}.achievementTitle h2{margin:4px 0;font-size:24px}.achievementTitle p{color:#d6fff7;margin:0;font-size:12px}.achievementScore{text-align:center;color:#9b6810;background:#fff4cf;border:3px solid #ffc72f;border-radius:16px;min-width:82px;padding:8px}.achievementScore span,.achievementScore strong{display:block}.achievementScore strong{font-size:26px}.achievementRules{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.achievementRules span{text-align:center;color:#7c9097;background:#fff;border-radius:13px;padding:10px 5px;font-size:11px}.achievementRules b{color:#078b91}.castleCollection{grid-template-columns:minmax(0,1fr) 112px;align-items:start;gap:10px;display:grid}.castleProgress,.pieceShelf{background:#fff;border-radius:18px;padding:10px;box-shadow:0 4px 14px #17304212}.castleArt{aspect-ratio:1;background:#fff1db;border-radius:14px;position:relative;overflow:hidden}.castleArt img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.castleShadow{filter:grayscale()brightness(.65)opacity(.52)}.castleColor{clip-path:inset(0);filter:saturate(1.05)}.castleColor10{clip-path:circle(20% at 50% 45%)}.castleProgressText{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.castleProgressText strong{color:#0b9994;font-size:20px}.castleProgressText span{color:#8b9ca1;font-size:10px}.castleBar{background:#e6edef;border-radius:8px;height:9px;margin-top:6px;overflow:hidden}.castleBar i{background:linear-gradient(90deg,#13b6c8,#36d889);border-radius:8px;height:100%;display:block}.pieceShelf{padding:8px}.pieceShelfHead{justify-content:space-between;align-items:center;margin-bottom:7px;font-size:11px;display:flex}.pieceShelfHead small{color:#95a6aa}.pieceList{grid-template-columns:1fr 1fr;gap:5px;display:grid}.pieceList div{aspect-ratio:1;background:#fff4df;border:1px solid #f0d6af;border-radius:8px;position:relative;overflow:hidden}.pieceList img{object-fit:contain;width:100%;height:100%}.pieceList span{color:#fff;background:#20bd78;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;display:grid;position:absolute;bottom:2px;right:3px}.pieceList .lockedPiece img{filter:grayscale()brightness(.35)opacity(.45)}.pieceShelf>button{color:#6b4305;background:#ffbf2d;border:0;border-radius:10px;width:100%;margin-top:8px;padding:8px 4px;font-size:10px;font-weight:900}.pieceShelf>button:disabled{color:#879599;background:#dce3e5}.achievementHint{text-align:center;color:#87999f;margin:0;font-size:11px}@media (width<=420px){.castleCollection{grid-template-columns:minmax(0,1fr) 100px}.achievementTitle p{max-width:210px}.achievementRules span{font-size:10px}.pieceShelf{padding:6px}.pieceList{gap:4px}}.castleArt{background:radial-gradient(circle at 50% 42%,#fffaf0 0,#f9ead1 68%,#eed6b4 100%)}.castleShadow{filter:brightness(0)drop-shadow(0 8px 7px #684d3338);opacity:.72}.castleQuestion{color:#896323;z-index:3;background:#fff7dcdd;border:4px solid #d6af5b;border-radius:50%;place-items:center;width:70px;height:70px;font-size:44px;line-height:1;display:grid;position:absolute;top:48%;left:50%;translate:-50% -50%;box-shadow:0 7px 20px #5c3f2645}.castleColor{filter:saturate(1.05);z-index:2}.castleColor1{clip-path:inset(0 66.666% 66.666% 0)}.castleColor2{clip-path:inset(0 33.333% 66.666%)}.castleColor3{clip-path:inset(0 0 66.666% 66.666%)}.castleColor4{clip-path:inset(33.333% 66.666% 33.333% 0)}.castleColor5{clip-path:inset(33.333%)}.castleColor6{clip-path:inset(33.333% 0 33.333% 66.666%)}.castleColor7{clip-path:inset(66.666% 66.666% 0 0)}.castleColor8{clip-path:inset(66.666% 33.333% 0)}.castleColor9{clip-path:inset(66.666% 0 0 66.666%)}.pieceList{grid-template-columns:repeat(3,1fr);gap:3px}.pieceList div{background:#f3e5ca;border-color:#d9bd8b;border-radius:5px}.pieceList img{object-fit:contain;position:absolute}.pieceList span{z-index:2;width:14px;height:14px;font-size:8px;bottom:2px;right:2px}.pieceList .lockedPiece span{background:#746653}.castleShadow{filter:none;opacity:1;image-rendering:auto}.castleCollection{grid-template-columns:1fr}.pieceShelf{min-width:0}.pieceList{scroll-snap-type:x mandatory;grid-template-columns:none;gap:5px;padding:2px 1px 7px;display:flex;overflow-x:auto}.pieceList div{scroll-snap-align:start;aspect-ratio:1;background:#f3e6cf;border:1px solid #d4ba8d;border-radius:4px;flex:0 0 66px}.pieceList .lockedPiece img{filter:none;opacity:1}.castleAchievementList{gap:18px;display:grid}.castleAchievementCard{background:#fff;border-radius:20px;padding:12px;box-shadow:0 5px 18px #17304214}.castleAchievementCard h3{color:#174453;margin:0 0 9px;font-size:18px}.castleAchievementCard h3 span{letter-spacing:.14em;color:#12a99f;font-size:9px;display:block}.castleComplete{text-align:center;color:#138457;background:#d9f8e8;border-radius:9px;margin-top:8px;padding:8px;font-size:11px;display:block}.castleWaiting{text-align:center;color:#91a0a4;margin-top:8px;font-size:9px;display:block}.achievementAdminHero{background:linear-gradient(135deg,#7355cb,#d254a7)}.achievementCreator,.achievementAdminList{background:#fff;border-radius:20px;max-width:960px;margin:16px auto;padding:20px}.achievementCreator{gap:14px;display:grid}.achievementCreator>label{color:#174453;gap:7px;font-weight:800;display:grid}.achievementCreator input[type=text],.achievementCreator>label>input:not([type=file]){font:inherit;border:1px solid #c8dfe4;border-radius:11px;padding:12px}.achievementUpload{text-align:center;cursor:pointer;border:2px dashed #5bc4c8;border-radius:16px;place-items:center;min-height:210px;padding:14px}.achievementUpload input{display:none}.achievementUpload img{object-fit:contain;max-width:260px;max-height:220px}.achievementUpload span{color:#159aa0;font-size:18px}.achievementUpload small{color:#82979d;font-weight:400}.achievementCreator>button{color:#fff;background:linear-gradient(90deg,#10aec0,#21c78d);border:0;border-radius:13px;padding:14px;font-weight:900}.achievementCreator>button:disabled{background:#d6e1e3}.achievementCreator>p{color:#755a18;background:#fff6cf;border-radius:9px;margin:0;padding:10px}.achievementAdminList>header{border-bottom:1px solid #dbe7e9;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.achievementAdminList h2{margin:2px 0}.achievementAdminList article{border-bottom:1px solid #e3ecee;grid-template-columns:82px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.achievementAdminThumb{background:#f7ead7;border-radius:10px;height:72px;position:relative;overflow:hidden}.achievementAdminThumb img{object-fit:contain;width:100%;height:100%}.achievementAdminThumb i{color:#fff;background:#17535a;border-radius:6px;padding:2px 5px;font-size:9px;position:absolute;bottom:3px;right:3px}.achievementAdminList article span{gap:4px;display:grid}.achievementAdminList article small{color:#87999e}.achievementAdminList article button{color:#c23d49;background:#ffe3e4;border:0;border-radius:9px;padding:8px 12px;font-weight:800}.achievementAdminList article em{color:#93a4a8;font-style:normal}@media (width<=600px){.achievementAdminList article{grid-template-columns:68px 1fr}.achievementAdminList article>button,.achievementAdminList article>em{grid-column:2;justify-self:start}.achievementCreator,.achievementAdminList{padding:14px}}.puzzle{grid-template-columns:repeat(3,58px);justify-content:center;gap:5px;margin:25px;display:grid}.puzzle i{color:#a8b9bd;background:#e6eff1;place-items:center;height:58px;font-size:24px;font-style:normal;display:grid}.puzzle i.got{color:#fff;background:#6ddcb1}.modal{z-index:20;background:#173042b5;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.shop{text-align:center;background:#fff;border-radius:24px;width:min(390px,100%);padding:24px;position:relative}.shop .x{background:0 0;border:0;font-size:28px;position:absolute;top:9px;right:12px}.shop>div{gap:10px;display:flex}.shop>div button{background:#fff9de;border:0;border-radius:16px;flex:1;padding:14px 5px}.shop b,.shop strong,.shop span{margin:7px;display:block}.shop b{color:#f0b600;font-size:25px}.shop span{color:#fff;background:#64d51b;border-radius:14px;padding:5px;font-size:12px}.settingsPage{z-index:30;color:#91472f;background:linear-gradient(#fff0cf,#ffebc5);width:min(100%,540px);margin:auto;padding:26px 16px 50px;position:fixed;inset:0;overflow:auto}.settingsHeader{grid-template-columns:56px 1fr 56px;align-items:end;height:112px;padding-bottom:18px;display:grid}.settingsHeader h1{text-align:center;letter-spacing:.08em;grid-column:2;margin:0;font-size:30px}.settingsBack{background-color:#0000;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%23ffda8d' stroke='%238c4a31' stroke-width='3'/%3E%3Cpath d='M35 18 21 32l14 14M22 32h23' fill='none' stroke='%238c4a31' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:0;border-radius:50%;grid-area:1/1;width:48px;height:48px;font-size:0;box-shadow:0 3px 7px #86472135}.settingsContent{gap:14px;display:grid}.settingsGroup,.removeAdsCard,.settingsSingle{background:#fffdfa;border:1px solid #efdfc9;border-radius:12px;overflow:hidden;box-shadow:0 3px 7px #8d5b2520}.settingRow,.settingsLinks button,.settingsSingle{color:#91472f;text-align:left;background:0 0;border:0;align-items:center;width:100%;height:68px;padding:0 22px;font-size:20px;display:flex}.settingRow{column-gap:10px}.settingRow+.settingRow,.settingsLinks button+button{border-top:1px solid #decfbd}.settingIcon,.settingsLinks button>span,.settingsSingle>span{flex:0 0 36px;width:36px;font-size:27px;font-style:normal;font-weight:900}.settingIcon{place-items:center;height:34px;display:grid}.settingIcon svg{fill:none;stroke:#97492f;stroke-width:3.2px;stroke-linecap:round;stroke-linejoin:round;width:29px;height:29px;display:block}.settingIcon svg .iconFill{fill:#97492f;stroke:#97492f}.settingRow strong,.settingsLinks strong,.settingsSingle strong{flex:1;font-weight:500}.settingToggle{background:#c7c7c7;border-radius:22px;width:70px;height:38px;padding:4px;transition:all .22s}.settingToggle b{background:#fff;border-radius:50%;width:30px;height:30px;transition:all .22s;display:block;box-shadow:0 2px 5px #0003}.settingToggle.on{background:#28c45e}.settingToggle.on b{transform:translate(32px)}.removeAdsCard{color:#91472f;text-align:left;border:0;justify-content:space-between;align-items:center;width:100%;min-height:130px;padding:18px 24px;display:flex}.removeAdsCard span{gap:18px;display:grid}.removeAdsCard strong{font-size:18px;font-weight:500}.removeAdsCard span>b{color:#9b571e;background:linear-gradient(#ffd861,#ffb735);border:1px solid #d79224;border-radius:9px;justify-self:start;padding:8px 18px;font-size:20px;box-shadow:0 3px 4px #89551d35}.removeAdsCard>i{color:#ffd54a;-webkit-text-stroke:1.5px #9d392c;text-shadow:0 1px #fff;background:#fff7da;border:8px solid #e53237;border-radius:50%;place-items:center;width:76px;height:76px;font-size:25px;font-style:normal;font-weight:900;line-height:1;display:grid;position:relative;transform:rotate(-5deg);box-shadow:inset 0 0 0 3px #fff,0 3px 7px #8f3b2935}.removeAdsCard>i span{background:#e53237;border-radius:6px;width:83px;height:8px;position:absolute;transform:rotate(43deg);box-shadow:0 2px #9e292c}.coinPurchaseCard{background:#fffdfa;border:1px solid #efdfc9;border-radius:12px;overflow:hidden;box-shadow:0 3px 7px #8d5b2520}.coinPurchaseOptions{grid-template-columns:1fr 1fr;display:grid}.coinPurchaseOptions button{color:#91472f;background:0 0;border:0;justify-content:center;align-items:center;gap:12px;min-height:92px;padding:15px;display:flex}.coinPurchaseOptions button+button{border-left:1px solid #decfbd}.coinPurchaseOptions button>i{color:#fff;background:linear-gradient(#ffe26b,#ffb824);border:2px solid #d89523;border-radius:50%;place-items:center;width:42px;height:42px;font-style:normal;display:grid;box-shadow:0 2px 4px #89551d35}.coinPurchaseOptions button>span{text-align:left;gap:4px;display:grid}.coinPurchaseOptions strong{font-size:19px}.coinPurchaseOptions small{color:#884b16;background:#ffbf3d;border:1px solid #d79224;border-radius:7px;padding:4px 10px;font-size:14px;font-weight:800}.coinPurchaseOptions button:active{background:#fff4d9;transform:scale(.98)}.coinBalance{color:#91472f;border-top:1px solid #decfbd;justify-content:space-between;align-items:center;min-height:56px;padding:0 22px;display:flex}.coinBalance span{font-size:16px}.coinBalance strong{color:#9b571e;font-size:20px}.purchaseNotice{color:#81532f;background:#fff8dc;border:1px solid #e7c77e;border-radius:12px;align-items:flex-start;gap:12px;padding:13px 15px;font-size:14px;line-height:1.55;display:flex}.purchaseNotice span{flex:1}.purchaseNotice button{color:#a56842;cursor:pointer;background:0 0;border:0;font-size:24px;line-height:1}.settingsSingle{border:1px solid #efdfc9}.settingsLinks button{height:66px}.settingsLinks button>b{color:#cdbdad;font-size:34px;font-weight:400}@media (width<=420px){.settingsPage{padding-inline:12px}.settingRow,.settingsLinks button,.settingsSingle{padding-inline:16px;font-size:18px}.removeAdsCard{padding-inline:18px}.settingToggle{width:62px}.settingToggle.on b{transform:translate(24px)}.coinPurchaseOptions button{gap:8px;padding-inline:8px}.coinPurchaseOptions strong{font-size:17px}}.playWrap{background:#eaf7f9;min-height:100vh;padding:12px}.initialLoading{background:#071d68;height:100vh;min-height:100vh;display:block;overflow:hidden;padding:0!important}.loadingSplashArt{object-fit:cover;object-position:center;width:100%;height:100%;animation:.45s ease-out both splashArrival;display:block}@keyframes splashArrival{0%{opacity:.45;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}.phoneGame{background:#eef9fb;border-radius:28px;width:min(720px,100%);margin:auto;padding:14px 18px 24px;position:relative;overflow:hidden;box-shadow:0 18px 50px #1730421c}.gameHead{text-align:center;grid-template-columns:48px 1fr 76px;align-items:center;display:grid}.gameHead h1{color:#79909a;margin:1px;font-size:18px;font-weight:500}.gameHead small{letter-spacing:.14em;font-weight:900}.back{background:#fff;border:0;border-radius:15px;width:44px;height:44px;font-size:30px}.score{font-size:22px;font-weight:900}.hearts{text-align:center;height:28px}.hearts span{color:#ff5570;margin:3px;font-size:24px}.hearts span.lost{color:#c7d8dc}.stackedImages{gap:12px;display:grid}.gameImage{aspect-ratio:4/3;border:5px solid #fff;border-radius:24px;position:relative;overflow:hidden}.gameImage img{object-fit:cover;width:100%;height:100%}.gameImage i{background:#16b98518;border:5px solid #16b985;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.gameImage i.hintReveal{background:#ffd21f2e;border-color:#ffd21f;animation:1s ease-in-out infinite hintPulse;box-shadow:0 0 0 6px #fff8,0 0 22px 8px #ffd21fcc}.dots span.hinted{background:#ffc928;border-color:#ffc928;font-size:14px}@keyframes hintPulse{50%{transform:translate(-50%,-50%)scale(1.12);box-shadow:0 0 0 10px #fff5,0 0 28px 12px #ffd21fe0}}.gameTools{background:#fff;border-radius:20px;justify-content:space-between;align-items:center;margin-top:13px;padding:13px;display:flex}.dots{gap:7px;display:flex}.dots span{color:#fff;background:#eaf2f4;border:3px solid #c5d7dc;border-radius:50%;place-items:center;width:29px;height:29px;display:grid}.dots span.done{background:#2db36c;border-color:#2db36c}.gameTools button{color:#9d6810;background:#fff1c8;border:0;border-radius:15px;padding:11px 15px;font-weight:900}.adSlot{color:#71868e;background:#fff;border:1px solid #dae6e9;border-radius:16px;margin-top:13px;padding:17px}.adSlot small{float:right}.gameOverlay{z-index:3;background:#173042b8;place-items:center;padding:25px;display:grid;position:absolute;inset:0}.gameOverlay>div{text-align:center;background:#fff;border-radius:24px;padding:25px}.gameOverlay button{background:var(--aqua);color:#fff;border:0;border-radius:14px;padding:12px 18px;font-weight:900}.admin{max-width:900px;margin:30px auto;padding:20px}.adminBack{color:#24515c;background:0 0;border:0;align-items:center;gap:8px;margin-bottom:14px;font-size:0;font-weight:800;display:inline-flex}.adminBack:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%23ffda8d' stroke='%238c4a31' stroke-width='3'/%3E%3Cpath d='M35 18 21 32l14 14M22 32h23' fill='none' stroke='%238c4a31' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;flex:0 0 34px;width:34px;height:34px}.adminBack:after{content:"返回玩家端";font-size:14px}.adminHero{color:#fff;background:linear-gradient(135deg,#087f93,#20b9a4);border-radius:24px;justify-content:space-between;align-items:center;padding:28px;display:flex}.adminHero button,.adminList button{color:#087f93;background:#fff;border:0;border-radius:14px;padding:12px 15px;font-weight:900}.adminMsg{background:#fff8d8;border-radius:12px;padding:12px}.adminList{background:#fff;border-radius:20px;margin-top:16px;padding:15px}.adminList>div{border-bottom:1px solid #dce8ea;align-items:center;gap:13px;padding:12px;display:flex}.adminList img{border-radius:10px;width:80px}.adminList span{flex:1}.adminList small{color:#8da0a6;margin-top:5px;display:block}.adminList button{background:var(--aqua);color:#fff}@media (width<=560px){.levelGrid{gap:9px}.calendar{grid-template-columns:repeat(7,1fr)}.phoneGame{border-radius:18px;padding:10px 8px}.gameImage{border-width:4px;border-radius:19px}.adminHero{flex-direction:column;align-items:flex-start;gap:15px}.adminList>div{flex-wrap:wrap}.adminList span{min-width:calc(100% - 100px)}}.adBreak{color:#fff;background:#07131c;place-items:center;min-height:100dvh;padding:22px;display:grid}.adCreative{text-align:center;width:min(430px,100%)}.adCreative>small{color:#8fa0aa;letter-spacing:.18em}.adMock{color:#ffffff26;background:linear-gradient(145deg,#173d51,#0b6874);border:1px solid #ffffff20;border-radius:22px;place-items:center;height:min(55vh,440px);margin:14px 0 20px;font-size:70px;font-weight:900;display:grid}.adCreative h2{margin:8px}.adCreative p{color:#aabac2}.adCreative button{color:#fff;background:#19bfd2;border:0;border-radius:16px;width:100%;padding:14px;font-weight:900}.adCreative button:disabled{color:#8da0a8;background:#344852}.achievementUpload.processing{opacity:.7;pointer-events:none}.achievementPreviewPair{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.achievementPreviewPair>span{background:#fff7e8;border-radius:12px;place-items:center;gap:6px;padding:8px;display:grid}.achievementPreviewPair img{object-fit:contain;width:100%;height:190px}.achievementPreviewPair b{color:#526b72;font-size:11px}.achievementUploadGrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.achievementUploadGrid .achievementUpload{align-content:center;gap:8px;min-height:270px;display:grid}.achievementUploadGrid .achievementUpload img{object-fit:contain;background:#fff7e8;border-radius:10px;width:100%;max-width:none;height:190px}.achievementUploadGrid .achievementUpload b{color:#174453}.achievementUploadNote{color:#497078!important;background:#eef9f8!important;margin:0!important}.achievementAdminThumbPair{grid-template-columns:1fr 1fr;display:grid}.achievementAdminThumbPair img{object-fit:cover;min-width:0;height:100%}.achievementAdminThumbPair i{z-index:2}.memberManager{background:#fff;border-radius:22px;max-width:1180px;margin:16px auto;padding:22px;box-shadow:0 8px 28px #16455312}.memberManagerHead{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.memberManagerHead h1{color:#174453;margin:3px 0}.memberManagerHead p{color:#789096;margin:0}.memberManagerHead>div:last-child{gap:10px;display:flex}.memberManagerHead button{border:0;border-radius:11px;padding:11px 16px;font-weight:900}.memberAdd{color:#fff;background:#18b987}.memberCsv{color:#087f8b;background:#e8f8fa}.memberCsv:disabled{opacity:.45}.memberStatus{color:#76591c;background:#fff6cf;border-radius:10px;padding:10px 14px}.memberTableWrap{border:1px solid #dce9eb;border-radius:14px;overflow:auto}.memberTable{border-collapse:collapse;color:#294c58;width:100%;min-width:920px}.memberTable th{color:#167c88;text-align:left;white-space:nowrap;background:#eef9fa;padding:13px 12px;font-size:13px}.memberTable td{border-top:1px solid #e2ecee;padding:14px 12px;font-size:14px}.memberRole{background:#edf1f2;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-block}.memberRole.adFree{color:#9d6500;background:#fff1c9}.memberPoints{color:#0c9a83}.memberActions{gap:6px;display:flex}.memberActions button{color:#087d8b;background:#eaf7f9;border:0;border-radius:8px;padding:7px 10px;font-weight:800}.memberActions .memberDelete{color:#c9434c;background:#ffe9e9}.memberEmpty{color:#8ba0a5;text-align:center!important;padding:38px!important}.memberEditor{background:#fff;border-radius:20px;width:min(680px,94vw);padding:24px;position:relative}.memberEditor h2{color:#174453;margin:4px 0 18px}.memberEditor>small{color:#0aa6ac;letter-spacing:.12em;font-weight:900}.memberForm{grid-template-columns:1fr 1fr;gap:14px;display:grid}.memberForm label{color:#385d68;gap:6px;font-size:14px;font-weight:800;display:grid}.memberForm input,.memberForm select{width:100%;font:inherit;background:#fff;border:1px solid #c8dde1;border-radius:10px;padding:11px}.memberSave{color:#fff;background:linear-gradient(90deg,#11aabd,#1ec58d);border:0;border-radius:11px;width:100%;margin-top:18px;padding:13px;font-weight:900}.memberSave:disabled{opacity:.5}@media (width<=700px){.memberManager{padding:14px}.memberManagerHead{flex-direction:column;align-items:flex-start}.memberManagerHead>div:last-child{width:100%}.memberManagerHead button{flex:1}.memberForm{grid-template-columns:1fr}.memberEditor{padding:20px 16px}}@media (width<=600px){.achievementPreviewPair{grid-template-columns:1fr}.achievementPreviewPair img{height:160px}.achievementUploadGrid{grid-template-columns:1fr}.achievementUploadGrid .achievementUpload{min-height:220px}.achievementUploadGrid .achievementUpload img{height:160px}}.wrongTapMark{z-index:80;pointer-events:none;color:#fff;text-shadow:0 2px 2px #8f1020;background:#ef3349e8;border:4px solid #fff;border-radius:50%;place-items:center;width:54px;height:54px;margin:-27px 0 0 -27px;font:900 48px/1 Arial,sans-serif;animation:.62s ease-out both wrongTapPop;display:grid;position:fixed;box-shadow:0 4px 15px #8b001b66}@keyframes wrongTapPop{0%{opacity:0;transform:scale(.35)rotate(-18deg)}22%{opacity:1;transform:scale(1.22)rotate(8deg)}45%{transform:scale(.94)rotate(-4deg)}70%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(.72)}}.bannerAdminGrid .bannerAdminActions{grid-template-columns:minmax(0,1fr);gap:8px;padding:10px;display:grid}.bannerAdminGrid .bannerAdminActions b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.bannerAdminGrid .bannerAdminActions button{cursor:pointer;justify-content:center;width:100%}.bannerAdminGrid .bannerAdminActions button:disabled{cursor:wait}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.noAds{justify-content:center;align-items:center;gap:0;display:flex;box-shadow:0 5px 14px #0003;color:#087f93!important;background:#fffffff5!important;border:2px solid #ffffffe6!important;width:42px!important;padding:0!important;font-size:0!important}.noAds:before{content:"AD";color:#ffd54a;-webkit-text-stroke:1px #9d392c;text-shadow:0 1px #fff6a0;border:4px solid #e53237;border-radius:50%;place-items:center;width:31px;height:31px;font-size:13px;font-weight:900;line-height:1;display:grid;position:relative;transform:rotate(-5deg);box-shadow:inset 0 0 0 2px #fff7da}.noAds:after{content:"";background:#e53237;border-radius:5px;width:34px;height:4px;position:absolute;transform:rotate(43deg);box-shadow:0 1px #9e292c}.noAds span{display:none!important}.noAds:hover{transform:translateY(-1px);background:#fff!important}.gameImage{touch-action:pinch-zoom;aspect-ratio:4/3!important}.gameImage img{width:100%;display:block;object-fit:cover!important;height:100%!important}.adminList>div{align-items:center}.levelIndex{color:#087f93;text-align:center;min-width:62px;font-weight:900}.adminList img{object-fit:cover;width:92px;height:92px}.adminActions{gap:8px;display:flex}.adminActions .editButton{color:#087f93;background:#edf8fa}.generatorPanel{background:#fff;border-radius:22px;margin-top:18px;padding:22px;box-shadow:0 6px 20px #17304212}.generatorStep{border-bottom:1px solid #dce8ea;margin-bottom:18px;padding:8px 0 20px}.generatorStep>b{margin-bottom:12px;font-size:17px;display:block}.styleChoices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.styleChoices.three{grid-template-columns:repeat(3,1fr)}.promptCreator{gap:10px;margin-top:14px;display:grid}.promptCreator>label{gap:7px;font-weight:800;display:grid}.promptCreator textarea{resize:vertical;width:100%;font:inherit;border:1px solid #c8dce0;border-radius:12px;padding:12px}.promptCreator>button,.originalApproval button{color:#fff;background:#09a9c2;border:0;border-radius:13px;padding:12px 16px;font-weight:900}.promptCreator button:disabled{opacity:.5}.originalApproval{background:#edf8fa;border-radius:16px;grid-template-columns:minmax(260px,1.4fr) 1fr;align-items:center;gap:14px;padding:12px;display:grid}.originalApproval img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%}.originalApproval>div{gap:10px;display:grid}.originalApproval span{color:#71868e;font-size:13px}.originalApproval .regenerate{color:#087f93;background:#fff;border:1px solid #bcdce2}.styleChoices label{cursor:pointer;border:2px solid #d8e7ea;border-radius:14px;padding:14px}.styleChoices label.selected{background:#edfbfd;border-color:#12b9cf}.artStylePicker{background:#f2fbfc;border-radius:15px;grid-template-columns:minmax(150px,.7fr) minmax(260px,1.8fr);align-items:center;gap:8px 14px;margin-top:14px;padding:15px;display:grid}.artStylePicker span{color:#087f93;font-weight:900}.artStylePicker select{color:#314750;width:100%;min-height:48px;font:inherit;background:#fff;border:2px solid #bcdde3;border-radius:12px;padding:10px 42px 10px 13px}.artStylePicker small{color:#80949b;grid-column:2}.styleUpload{cursor:pointer;background:#f5fbfc;border:2px dashed #bcd5da;border-radius:16px;place-items:center;gap:7px;min-height:145px;margin-top:12px;display:grid;overflow:hidden}.styleUpload input{display:none}.styleUpload span{color:#087f93;font-weight:900}.styleUpload small{color:#84989f}.styleUpload img{object-fit:contain;width:100%;max-height:210px}.rangeFields{grid-template-columns:1fr auto 1fr 1fr;align-items:end;gap:10px;display:grid}.imageSpec{color:#087f93;background:#eefafb;border-radius:12px;justify-content:space-between;gap:12px;margin-bottom:14px;padding:11px 13px;font-size:13px;display:flex}.rangeFields label{color:#71868e;gap:6px;font-size:13px;display:grid}.rangeFields input{border:1px solid #cbdde1;border-radius:11px;width:100%;padding:11px;font-size:16px}.generateButton{color:#fff;background:linear-gradient(135deg,#08aaca,#22c994);border:0;border-radius:15px;width:100%;padding:15px;font-size:17px;font-weight:900}.generateButton:disabled{opacity:.5}.draftNotice{text-align:center;color:#7e9299;margin:10px 0 0;font-size:13px}.adminList strong.draft{color:#d68b00}.adminList strong.published{color:#20a967}.adminActions .previewButton{color:#9c6a00;background:#fff3d3}.adminActions .publishButton{color:#fff;background:#23bd73}.adminActions .unpublishButton{color:#6c7f85;background:#ecf2f3}.adminActions .deleteButton{color:#d93f52;background:#fff0f1}.levelEditor{background:#fff;border-radius:24px;width:min(760px,100%);max-height:90vh;padding:24px;position:relative;overflow:auto}.levelEditor .x{background:0 0;border:0;font-size:28px;position:absolute;top:10px;right:14px}.editorImages{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.editorImages img{object-fit:contain;background:#edf7f8;border-radius:14px;width:100%;max-height:230px}.levelEditor>label{gap:6px;margin:12px 0;font-weight:700;display:grid}.levelEditor input{border:1px solid #cbdde1;border-radius:10px;min-width:0;padding:9px}.coordinateRow{grid-template-columns:24px minmax(130px,1fr) repeat(3,86px);align-items:end;gap:8px;margin:9px 0;display:grid}.coordinateRow label{color:#71868e;gap:3px;font-size:12px;display:grid}.saveLevel{color:#fff;background:#12b9cf;border:0;border-radius:14px;width:100%;margin-top:18px;padding:13px;font-weight:900}.calibrationPage{color:#163849;background:#eaf7f9;min-height:100vh;padding:20px}.calibrationHead{background:#fff;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;max-width:1100px;margin:0 auto 16px;padding:16px 20px;display:grid}.calibrationHead button{color:#087f93;background:#eaf7f9;border:0;border-radius:13px;padding:12px 16px;font-weight:900}.calibrationHead>button:first-child{background-color:#0000;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%23ffda8d' stroke='%238c4a31' stroke-width='3'/%3E%3Cpath d='M35 18 21 32l14 14M22 32h23' fill='none' stroke='%238c4a31' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border-radius:50%;width:44px;height:44px;padding:0;font-size:0;box-shadow:0 3px 7px #86472135}.calibrationHead h1{margin:2px 0;font-size:24px}.calibrationHead p{color:#71868e;margin:2px 0}.calibrationHead .calibrationSave{color:#fff;background:#13af75}.calibrationImages{grid-template-columns:1fr 1fr;gap:12px;max-width:1100px;margin:auto;display:grid}.calibrationImages section{background:#fff;border-radius:18px;padding:10px}.calibrationImages section>b{padding:3px 4px 9px;display:block}.calibrationImage{aspect-ratio:4/3;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;position:relative;overflow:hidden}.calibrationImage>img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.calibrationImage>button{color:#fff;text-shadow:0 1px 3px #000;cursor:grab;touch-action:none;background:#ff3f6233;border:3px solid #fff;border-radius:50%;outline:3px solid #ff3f62;place-items:center;padding:0;font-size:17px;font-weight:900;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0005}.calibrationImage>button.selected{z-index:2;background:#00a9bd55;outline-color:#00a9bd}.calibrationImage>button:active{cursor:grabbing}.answerTypeLegend{grid-template-columns:repeat(5,1fr);gap:8px;max-width:1100px;margin:10px auto 0;display:grid}.answerTypeLegend button{color:#36545f;background:#fff;border:1px solid #d4e6ea;border-radius:14px;align-items:center;gap:8px;padding:10px;font-weight:800;display:flex}.answerTypeLegend button.active{color:#087f93;background:#e7fbfd;border-color:#00a9bd}.answerTypeLegend strong{color:#fff;background:#ff3f62;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}.calibrationControls{background:#fff;border-radius:18px;align-items:center;gap:25px;max-width:1100px;margin:14px auto 0;padding:16px 20px;display:flex}.calibrationControls div{display:grid}.calibrationControls span{color:#71868e;font-size:13px}.calibrationControls label{flex:1;align-items:center;gap:12px;font-weight:800;display:flex}.calibrationControls input{flex:1}.calibrationControls em{color:#139565;font-style:normal;font-weight:900}@media (width<=620px){.styleChoices.three,.artStylePicker{grid-template-columns:1fr}.artStylePicker small{grid-column:1}.originalApproval{grid-template-columns:1fr}.calibrationPage{padding:8px}.calibrationHead{grid-template-columns:1fr auto;gap:8px;padding:12px}.calibrationHead>button:first-child{grid-column:1/-1;justify-self:start}.calibrationHead h1{font-size:19px}.calibrationHead p{font-size:13px}.calibrationImages{grid-template-columns:1fr;gap:6px}.calibrationImages section{border-radius:10px;padding:5px}.calibrationImages section>b{padding:2px 3px 5px;font-size:13px}.answerTypeLegend{grid-template-columns:repeat(2,1fr);gap:5px;margin-top:6px}.answerTypeLegend button{padding:8px;font-size:12px}.calibrationControls{flex-direction:column;align-items:stretch;gap:9px;margin-top:7px;padding:12px}.styleChoices{grid-template-columns:1fr}.rangeFields{grid-template-columns:1fr auto 1fr}.rangeFields label:last-child{grid-column:1/-1}.adminActions{width:100%}.adminActions button{flex:1}.levelIndex{min-width:54px}.coordinateRow{grid-template-columns:24px 1fr 1fr 1fr}.coordinateRow>input{grid-column:2/-1}}@media (width<=560px){.playWrap{background:#000;min-height:100dvh;padding:0}.phoneGame{width:100%;min-height:100dvh;box-shadow:none;background:#000;border-radius:0;padding:5px 6px 8px}.gameHead{color:#fff;height:48px}.gameHead h1{color:#d9e6e9;margin:0;font-size:13px}.gameHead small{font-size:12px}.back{border-radius:50%;width:38px;height:38px}.score{font-size:18px}.hearts{height:23px}.hearts span{font-size:20px}.stackedImages{gap:3px}.gameImage{border:0;border-radius:0}.gameTools{background:#050505;border-radius:0;margin-top:6px;padding:7px 10px}.dots{gap:5px}.dots span{border-width:2px;width:18px;height:18px}.gameTools button{border-radius:50%;padding:8px 10px;font-size:0}.gameTools button:first-letter{font-size:22px}.adSlot{display:none}.imageSpec{display:grid}}.fantasyPlay{--fantasy-gold:#ffc531;--fantasy-gold-dark:#a96308;--fantasy-teal:#086e72;--fantasy-ink:#063e4c;background:radial-gradient(circle at 50% -12%,#39d8ec 0,#0698c4 27%,#0000 54%),linear-gradient(#087fb4 0%,#064d70 40%,#032f43 100%);padding:10px}.fantasyGame{background:linear-gradient(#08a9cc 0%,#076f90 56%,#173f36 100%);border:2px solid #6de8f3;border-radius:30px;width:min(760px,100%);padding:12px 14px 24px;box-shadow:0 20px 55px #001d2d80,inset 0 0 35px #7af6ff38}.fantasyHud{grid-template-columns:48px minmax(128px,1fr) minmax(150px,1.5fr) minmax(90px,1fr);align-items:center;gap:10px;min-height:92px;padding:5px 2px 12px;display:grid}.fantasyBack{aspect-ratio:1;background-color:#0000;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%23ffda8d' stroke='%238c4a31' stroke-width='3'/%3E%3Cpath d='M35 18 21 32l14 14M22 32h23' fill='none' stroke='%238c4a31' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:0;border-radius:50%;width:44px;font-size:0;box-shadow:0 4px #8b4e0c}.hudHearts{justify-content:center;gap:5px;display:flex}.hudHearts span{color:#ff294b;filter:drop-shadow(0 3px #97132b)drop-shadow(0 0 2px #fff7cf);font-size:clamp(28px,5vw,42px);line-height:1}.hudHearts span.lost{color:#789ba4;filter:drop-shadow(0 2px #315460);opacity:.65}.levelPlaque{border:5px solid var(--fantasy-gold);color:#fffdf0;text-align:center;min-width:0;box-shadow:0 4px 0 var(--fantasy-gold-dark), inset 0 2px 8px #33d5cf73;text-shadow:0 2px 1px #003840;background:linear-gradient(#087f83,#045e66);border-radius:22px;padding:9px 20px 10px}.levelPlaque small,.levelPlaque strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.levelPlaque small{letter-spacing:.08em;font-size:20px;font-weight:1000}.levelPlaque strong{color:#b9f6ee;margin-top:3px;font-size:13px}.coinPill{color:#fff;background:linear-gradient(#6a3517,#3c1c0d);border:4px solid #f7c74c;border-radius:24px;justify-content:center;justify-self:end;align-items:center;gap:6px;min-width:96px;height:44px;padding:0 7px;display:flex;box-shadow:0 4px #713c0d}.coinPill span{color:#ffd321;font-size:24px}.coinPill b{font-size:19px}.coinPill i{aspect-ratio:1;background:#72cc24;border:2px solid #dafa75;border-radius:50%;place-items:center;width:25px;font-style:normal;font-weight:1000;display:grid}.fantasyImages{gap:10px}.fantasyImages .gameImage{isolation:isolate;background:#173f36;border:6px solid #ffd558;border-radius:29px;transition:transform .2s,filter .2s;box-shadow:0 0 0 3px #fff7c9,0 0 0 6px #8f5510,0 7px #603406,0 13px 25px #001d2d7d,inset 0 0 0 3px #fff1a4}.fantasyImages .gameImage:before{content:"";z-index:2;pointer-events:none;border-radius:20px;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #fff9d7b8,inset 0 12px 22px #fff9c41f,inset 0 -13px 24px #072f3340}.fantasyImages .gameImage:after{content:"";z-index:2;pointer-events:none;background:radial-gradient(circle at 2% 3%,#fff9c8 0 3px,#f5ba22 4px 7px,#0000 8px) 50%,radial-gradient(circle at 98% 3%,#fff9c8 0 3px,#f5ba22 4px 7px,#0000 8px) 50%,radial-gradient(circle at 2% 97%,#fff9c8 0 3px,#f5ba22 4px 7px,#0000 8px) 50%,radial-gradient(circle at 98% 97%,#fff9c8 0 3px,#f5ba22 4px 7px,#0000 8px) 50%,linear-gradient(110deg,#0000 0 42%,#fff8b92d 48%,#0000 54%) 130% 0/220% 100%;border-radius:18px;animation:5s ease-in-out infinite frameGlimmer;position:absolute;inset:5px}.fantasyImages .gameImage i{z-index:4;aspect-ratio:1;border-width:5px;box-shadow:0 0 0 3px #fff8d7b8;height:auto!important}@keyframes frameGlimmer{0%,65%,to{background-position:50%,50%,50%,50%,130% 0}82%{background-position:50%,50%,50%,50%,-110% 0}}.fantasyControls{justify-content:center;margin:18px 0 10px;display:flex}.roundControl{aspect-ratio:1;color:#fff;text-shadow:0 3px #1c6b98;background:linear-gradient(145deg,#ffd93a,#f2a508);border:7px solid #fff4c8;border-radius:50%;place-items:center;width:92px;display:grid;position:relative;box-shadow:0 6px #8b4a08,inset 0 5px 9px #fff8}.roundControl span{font-size:54px;line-height:.8;transform:rotate(-12deg)}.roundControl small{background:#7039bd;border:3px solid #fff;border-radius:50%;place-items:center;min-width:30px;height:30px;font-size:16px;font-weight:1000;display:grid;position:absolute;bottom:-5px;right:-9px}.roundControl:disabled{filter:grayscale(.55);opacity:.7}.progressPlaque{border:5px solid var(--fantasy-gold);color:#ffdc2f;text-align:center;background:linear-gradient(#087a78,#034d56);border-radius:24px;width:min(320px,80%);margin:0 auto;padding:10px 18px 11px;box-shadow:0 5px #8c4d0a,inset 0 2px 8px #42e4dc54}.progressPlaque strong{text-shadow:0 3px #4e3109;font-size:32px;line-height:1}.progressPlaque .dots{justify-content:center;margin-top:7px}.progressPlaque .dots span{background:#072f37;border:2px solid #d5f1df;width:18px;height:18px}.progressPlaque .dots span.done{background:#79dc24;border-color:#efff98}.fantasyImages .gameImage i.hintTarget{border-color:#ffe54d;animation:.85s ease-in-out infinite alternate hintTargetPulse;box-shadow:0 0 0 3px #fff8d7,0 0 18px 8px #ffe84b}@keyframes hintTargetPulse{0%{opacity:.72;transform:translate(-50%,-50%)scale(.92)}to{opacity:1;transform:translate(-50%,-50%)scale(1.08)}}.foundStarFlight{--spark-sx:0px;--spark-sy:0px;--spark-tx:0px;--spark-ty:0px;z-index:100;pointer-events:none;width:42px;height:42px;transform:translate(calc(var(--spark-sx) - 21px),calc(var(--spark-sy) - 21px));filter:drop-shadow(0 3px 2px #8c4b0a);animation:.9s cubic-bezier(.22,.8,.26,1) forwards starFlyToProgress;position:fixed;top:0;left:0}.foundStarBurst{z-index:101;pointer-events:none;width:1px;height:1px;position:fixed}.foundStarBurst i{--burst-x:0px;--burst-y:0px;--burst-delay:0s;color:#fff45a;text-shadow:0 0 5px #fff,0 0 12px #ffb800,0 2px 1px #9f5000;opacity:0;animation:multiStarBurst .72s var(--burst-delay) cubic-bezier(.15,.75,.2,1) forwards;font-size:clamp(17px,4vw,27px);font-style:normal;line-height:1;position:absolute;top:0;left:0}.foundStarFlight b{color:#fff36b;text-shadow:0 0 5px #fff,0 0 12px #ffbf00,0 2px #b35a00;place-items:center;font-size:42px;line-height:1;animation:.38s ease-in-out infinite alternate starSpinBounce;display:grid;position:absolute;inset:0}.foundStarFlight i{color:#fff7a8;font-size:19px;font-style:normal;animation:.55s ease-out both sparklePop;position:absolute}.foundStarFlight i:first-of-type{top:3px;left:-15px}.foundStarFlight i:nth-of-type(2){animation-delay:80ms;top:-8px;right:-13px}.foundStarFlight i:nth-of-type(3){animation-delay:.16s;bottom:-10px;right:-5px}.progressPlaque .dots span.starLanding{animation:.48s cubic-bezier(.2,1.7,.3,1) .72s both starDotLand}@keyframes starFlyToProgress{0%{transform:translate(calc(var(--spark-sx) - 21px),calc(var(--spark-sy) - 21px)) scale(.35);opacity:0}18%{transform:translate(calc(var(--spark-sx) - 21px),calc(var(--spark-sy) - 67px)) scale(1.25);opacity:1}55%{transform:translate(calc((var(--spark-sx) + var(--spark-tx))/2 - 21px),calc(min(var(--spark-sy),var(--spark-ty)) - 95px)) scale(1)}to{transform:translate(calc(var(--spark-tx) - 21px),calc(var(--spark-ty) - 21px)) scale(.28);opacity:.25}}@keyframes starSpinBounce{0%{transform:rotate(-18deg)scale(.88)}to{transform:rotate(18deg)scale(1.14)}}@keyframes sparklePop{0%{opacity:0;transform:scale(0)rotate(0)}45%{opacity:1;transform:scale(1.35)rotate(35deg)}to{opacity:0;transform:scale(.4)rotate(80deg)}}@keyframes multiStarBurst{0%{opacity:0;transform:translate(-50%,-50%)scale(.15)rotate(0)}18%{opacity:1}58%{transform:translate(calc(-50% + var(--burst-x)),calc(-50% + var(--burst-y))) scale(1.25) rotate(145deg);opacity:1}to{transform:translate(calc(-50% + var(--burst-x)),calc(-50% + var(--burst-y))) scale(.15) rotate(260deg);opacity:0}}@keyframes starDotLand{0%{transform:scale(.7)}60%{transform:scale(1.65);box-shadow:0 0 18px 8px #fff66f}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.foundStarFlight{animation-duration:.15s}.foundStarBurst{display:none}.foundStarFlight b,.foundStarFlight i,.progressPlaque .dots span.starLanding,.fantasyImages .gameImage i.hintTarget{animation:none}}.fantasyGame .adSlot{color:#77500e;background:#fff8d9;border:3px solid #d89e25}@media (width<=560px){.fantasyPlay{background:linear-gradient(#069ed0,#043b58);padding:0}.fantasyGame{background:linear-gradient(#08a8ca,#075a76 68%,#173d32);border:0;border-radius:0;padding:5px 6px 14px}.fantasyHud{grid-template-columns:36px 1fr minmax(118px,1.35fr) minmax(74px,.8fr);gap:5px;min-height:70px;padding:3px 1px 7px}.fantasyBack{width:34px;box-shadow:0 3px #8b4e0c}.hudHearts{gap:1px}.hudHearts span{font-size:clamp(22px,7vw,31px)}.levelPlaque{box-shadow:0 3px 0 var(--fantasy-gold-dark);border-width:3px;border-radius:16px;padding:7px 7px 8px}.levelPlaque small{font-size:16px}.levelPlaque strong{font-size:10px}.coinPill{border-width:3px;gap:3px;min-width:72px;height:35px;padding:0 4px}.coinPill span{font-size:17px}.coinPill b{font-size:15px}.coinPill i{width:19px;font-size:12px}.fantasyImages{gap:7px}.fantasyImages .gameImage{border-width:4px;border-radius:19px;box-shadow:0 0 0 2px #fff7c9,0 0 0 4px #8f5510,0 4px #603406,0 8px 13px #001d2d73,inset 0 0 0 2px #fff1a4}.fantasyImages .gameImage:before{border-radius:14px;box-shadow:inset 0 0 0 1px #fff9d7d4,inset 0 8px 14px #fff9c41f,inset 0 -8px 14px #072f3338}.fantasyImages .gameImage:after{background-size:auto,auto,auto,auto,260% 100%;border-radius:13px;inset:3px}.fantasyImages .gameImage i{border-width:4px}.fantasyControls{margin:11px 0 7px}.roundControl{border-width:5px;width:68px;box-shadow:0 4px #8b4a08,inset 0 4px 7px #fff8}.roundControl span{font-size:40px}.roundControl small{border-width:2px;min-width:25px;height:25px;font-size:13px;bottom:-4px;right:-7px}.progressPlaque{border-width:3px;border-radius:17px;width:min(260px,78%);padding:7px 14px 8px;box-shadow:0 3px #8c4d0a}.progressPlaque strong{font-size:25px}.progressPlaque .dots{margin-top:5px}}.fantasyImages{gap:6px;padding:13px 0;position:relative}.fantasyImages:before,.fantasyImages:after{content:"";pointer-events:none;filter:drop-shadow(0 1px 2px #003841);opacity:.95;background:radial-gradient(circle,#ffe878 0 3px,#0000 3.5px) 0/34px 7px repeat-x,linear-gradient(90deg,#0000,#70e8d7 18%,#ffd85c 50%,#70e8d7 82%,#0000) 50%/100% 2px no-repeat;height:7px;position:absolute;left:4%;right:4%}.fantasyImages:before{top:2px}.fantasyImages:after{bottom:2px}.fantasyImages .gameImage{box-shadow:none;background:0 0;border:0;border-radius:15px}.syncedZoomViewport{touch-action:none;-webkit-user-select:none;user-select:none;cursor:zoom-in;position:relative;overflow:hidden}.syncedZoomViewport.isZoomed{cursor:grab}.syncedZoomViewport.isZoomed:active{cursor:grabbing}.syncedZoomContent{transform-origin:50%;will-change:transform;width:100%;height:100%;position:relative}.syncedZoomContent img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.syncedZoomContent>i{pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.zoomBadge{z-index:8;color:#fff7a5;text-align:center;pointer-events:none;background:#002f3bc9;border:1px solid #ffe25e;border-radius:12px;min-width:39px;padding:4px 7px;font-size:11px;font-weight:900;position:absolute;top:7px;right:7px}.fantasyImages .gameImage:before,.fantasyImages .gameImage:after{display:none}.fantasyBottom{background:radial-gradient(circle at 3%,#ffd557 0 4px,#0000 5px),radial-gradient(circle at 97%,#ffd557 0 4px,#0000 5px),linear-gradient(90deg,#0000,#1bd3c343 20% 80%,#0000);justify-content:center;align-items:center;gap:16px;margin-top:3px;padding:14px 16px 9px;display:flex;position:relative}.fantasyBottom .fantasyControls{flex:none;margin:0}.fantasyBottom .roundControl{border-width:5px;width:72px}.fantasyBottom .roundControl span{font-size:42px}.fantasyBottom .progressPlaque{width:min(290px,68%);margin:0;padding:8px 16px 9px}.fantasyBottom .progressPlaque strong{font-size:28px}.fantasyBottom .progressPlaque .dots{margin-top:5px}@media (width<=560px){.fantasyImages{gap:3px;padding:10px 0}.fantasyImages:before,.fantasyImages:after{background-size:27px 5px,100% 1px;height:5px;left:6%;right:6%}.fantasyImages .gameImage{box-shadow:none;border:0;border-radius:8px}.fantasyBottom{gap:10px;padding:9px 9px 7px}.fantasyBottom .roundControl{border-width:4px;width:56px;box-shadow:0 3px #8b4a08,inset 0 3px 6px #fff8}.fantasyBottom .roundControl span{font-size:33px}.fantasyBottom .roundControl small{min-width:21px;height:21px;font-size:11px}.fantasyBottom .progressPlaque{width:min(230px,72%);padding:6px 10px 7px}.fantasyBottom .progressPlaque strong{font-size:22px}.fantasyBottom .progressPlaque .dots span{width:14px;height:14px}}.fantasyHud .levelPlaque{outline-offset:1px;background:radial-gradient(at 50% 0,#2ab8b1 0,#0000 58%),linear-gradient(#087a7d 0%,#04535d 100%);border:5px solid #ffd235;border-radius:28px 20px;outline:3px solid #8a520c;place-items:center;min-height:62px;padding:9px 34px;display:grid;position:relative;box-shadow:0 6px #7b4208,0 9px 14px #002c3b80,inset 0 3px #a9fff18c,inset 0 -5px 10px #012d3580}.fantasyHud .levelPlaque:before,.fantasyHud .levelPlaque:after{content:"";aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fff6a6 0 18%,#ffc928 22% 58%,#a76509 62% 100%);border-radius:50%;width:13px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px #593005,0 0 0 2px #f8df75}.fantasyHud .levelPlaque:before{left:13px}.fantasyHud .levelPlaque:after{right:13px}.fantasyHud .levelPlaque small{letter-spacing:.055em;color:#fffef0;text-shadow:0 3px #01343a,1px 0 #01343a,-1px 0 #01343a;font-family:Arial Black,Arial,Noto Sans TC,sans-serif;font-size:clamp(22px,4vw,32px);line-height:1}@media (width<=560px){.fantasyHud .levelPlaque{border-width:4px;border-radius:21px 15px;outline-width:2px;min-height:46px;padding:6px 24px;box-shadow:0 4px #7b4208,0 6px 10px #002c3b73,inset 0 2px #a9fff18c,inset 0 -3px 7px #012d3570}.fantasyHud .levelPlaque:before,.fantasyHud .levelPlaque:after{width:9px;box-shadow:0 1px #593005,0 0 0 1px #f8df75}.fantasyHud .levelPlaque:before{left:9px}.fantasyHud .levelPlaque:after{right:9px}.fantasyHud .levelPlaque small{letter-spacing:.025em;font-size:clamp(11px,3.3vw,15px)}}.settingsModal{z-index:50}.settingsCard{background:#fff;border-radius:18px;width:min(300px,90vw);padding:18px 20px;position:relative;box-shadow:0 24px 60px #102c354d}.settingsCard .x{background:0 0;border:0;font-size:30px;position:absolute;top:7px;right:9px}.settingsCard h2{text-align:center;margin:2px 0 12px}.settingsCard>button:not(.x){text-align:left;color:#35464c;background:#fff;border:0;grid-template-columns:38px 1fr auto;align-items:center;gap:8px;width:100%;padding:11px 4px;font-size:16px;display:grid}.settingsCard>button span{text-align:center;color:#18272c;font-size:21px}.settingsCard>button b{color:#22ae72;font-size:13px}.settingsCard hr{border:0;border-top:1px solid #e0e7e9;margin:5px 0}.settingsCard>small{text-align:center;color:#a2afb3;border-top:1px solid #edf1f2;margin-top:10px;padding:10px;display:block}.adminLogin{background:radial-gradient(circle at 50% 15%,#42cdd1,#087487 42%,#073e51);place-items:center;min-height:100dvh;padding:20px;display:grid}.loginCard{background:#fff;border-radius:28px;gap:13px;width:min(420px,100%);padding:32px;display:grid;box-shadow:0 25px 70px #0026327d}.loginMark{aspect-ratio:1;color:#075b69;background:linear-gradient(145deg,#ffd942,#eda408);border:6px solid #fff2ad;border-radius:50%;outline:3px solid #9f5e07;place-items:center;width:70px;margin:auto;font-size:40px;font-weight:1000;display:grid}.loginCard>small{text-align:center;color:#069bb0;letter-spacing:.16em;font-weight:900}.loginCard h1,.loginCard p{text-align:center;margin:0}.loginCard p{color:#82969c}.loginCard label{gap:6px;font-weight:900;display:grid}.loginCard input{border:2px solid #d6e5e8;border-radius:14px;outline:0;width:100%;padding:13px;font-size:16px}.loginCard input:focus{border-color:#13b6c5}.loginCard em{color:#d53d53;text-align:center;font-style:normal}.loginCard>button{color:#fff;background:linear-gradient(135deg,#0eb7ce,#22c985);border:0;border-radius:15px;padding:14px;font-weight:900}.loginCard>a{color:#71868e;text-align:center;justify-content:center;align-items:center;gap:8px;font-size:0;text-decoration:none;display:flex}.loginCard>a:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%23ffda8d' stroke='%238c4a31' stroke-width='3'/%3E%3Cpath d='M35 18 21 32l14 14M22 32h23' fill='none' stroke='%238c4a31' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;width:34px;height:34px}.loginCard>a:after{content:"返回遊戲";font-size:14px}.adminTopActions{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.adminTopActions .adminBack{margin:0}.adminLogout{color:#6b7e84;background:#fff;border:1px solid #cfdee1;border-radius:12px;padding:9px 13px}.paymentManager{background:#fff;border-radius:24px;margin-bottom:18px;padding:22px;box-shadow:0 8px 25px #143e4812}.paymentTitle{justify-content:space-between;align-items:center;gap:16px;margin-bottom:15px;display:flex}.paymentTitle small{color:#0ca5b7;letter-spacing:.13em;font-weight:900}.paymentTitle h2{margin:3px 0}.paymentTitle p{color:#82969c;margin:0}.paymentTitle>button{color:#fff;white-space:nowrap;background:#13b681;border:0;border-radius:14px;padding:12px 16px;font-weight:900}.paymentStatus{color:#7b6107;background:#fff8d7;border-radius:10px;margin:10px 0;padding:10px 12px}.paymentProducts{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.paymentProducts article{background:#f8fcfc;border:1px solid #d8e7e9;border-radius:17px;gap:11px;padding:15px;display:grid}.paymentProducts article header{justify-content:space-between;align-items:center;gap:8px;display:flex}.paymentProducts article>label,.paymentProducts article>div label{color:#60757c;gap:5px;font-size:12px;font-weight:900;display:grid}.paymentProducts article input,.paymentProducts article select{color:#314750;background:#fff;border:1px solid #cbdde0;border-radius:10px;width:100%;min-width:0;padding:9px}.paymentProducts article>div{grid-template-columns:1fr 1fr 75px;gap:7px;display:grid}.switch{white-space:nowrap;align-items:center;gap:4px!important;display:flex!important}.switch input{width:auto!important}.switch span{color:#20a76e;font-size:11px}.billingNotice{color:#8b9ba0;margin-top:13px;line-height:1.6;display:block}@media (width<=720px){.paymentManager{padding:15px}.paymentTitle{flex-direction:column;align-items:flex-start}.paymentTitle>button{width:100%}.paymentProducts{grid-template-columns:1fr}.paymentProducts article>div{grid-template-columns:1fr 1fr 80px}.adminTopActions{padding:0 4px}}.adminPagination{background:#fff;border-radius:18px;justify-content:center;align-items:center;gap:18px;margin:18px 0 30px;padding:14px;display:flex;box-shadow:0 8px 25px #143e4812}.adminPagination button{color:#fff;cursor:pointer;background:#0eb4c5;border:0;border-radius:13px;padding:11px 18px;font-weight:900}.adminPagination button:disabled{color:#96a7ac;cursor:not-allowed;background:#d4e1e4}.adminPagination span{text-align:center;color:#25434c;min-width:150px;font-weight:900}.adminPagination small{color:#8ba0a6;margin-top:3px;font-weight:500;display:block}@media (width<=560px){.adminPagination{gap:8px;padding:10px}.adminPagination button{padding:10px 12px}.adminPagination span{min-width:112px;font-size:14px}}.gameGear{outline:2px solid #8d530d;place-items:center;transition:transform .18s,filter .18s;display:grid;overflow:visible;background:radial-gradient(circle at 35% 25%,#5ee9e0,#087c8b 58%,#044b61)!important;border:3px solid #ffe57a!important;width:44px!important;height:44px!important;padding:4px!important;box-shadow:0 4px #754207,0 7px 12px #002f4770,inset 0 2px 4px #d9fff0!important}.gameGear svg{filter:drop-shadow(0 2px 1px #003943);width:31px;height:31px;transition:transform .45s cubic-bezier(.2,.8,.2,1);overflow:visible}.gameGear .gearTeeth{fill:#ffe978;stroke:#985d08;stroke-width:1.6px}.gameGear .gearFace{fill:#ffc928;stroke:#fff7c5;stroke-width:2.2px}.gameGear .gearCore{fill:#087986;stroke:#fffbd2;stroke-width:2.8px}.gameGear:hover svg,.gameGear:focus-visible svg{transform:rotate(75deg)}.gameGear:active{transform:translateY(3px)scale(.94);box-shadow:0 1px #754207,0 3px 7px #002f4770,inset 0 2px 4px #d9fff0!important}.gameGear:focus-visible{outline-offset:3px;outline:3px solid #fff}@keyframes gearTwinkle{0%,to{opacity:.45;transform:scale(.65)rotate(0)}50%{opacity:1;transform:scale(1.25)rotate(35deg)}}.adminSectionTabs{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffed;border-radius:18px;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 18px;padding:9px;display:grid;position:sticky;top:0;box-shadow:0 8px 24px #123e481f}.adminSectionTabs button{color:#58727a;cursor:pointer;background:#eaf6f7;border:0;border-radius:13px;padding:12px 8px;font-weight:900}.adminSectionTabs button.active{color:#fff;background:linear-gradient(135deg,#0aaec4,#22bf8b);box-shadow:0 4px 10px #0699a83d}.specialHero{background:linear-gradient(135deg,#5635a8,#b847bd)!important}.specialGenerator{background:#fff;border-radius:22px;margin:16px 0;padding:22px;box-shadow:0 8px 25px #143e4812}.specialGenerator>div{grid-template-columns:2fr 1fr;gap:12px;display:grid}.specialGenerator label{color:#31515a;gap:7px;font-weight:900;display:grid}.specialGenerator select,.specialGenerator input{background:#fff;border:2px solid #d1e3e6;border-radius:13px;width:100%;padding:12px;font-size:16px}.specialGenerator p{color:#7655a5;font-weight:800;line-height:1.7}.specialGenerator>button{color:#fff;background:linear-gradient(135deg,#6844cc,#d055b7);border:0;border-radius:15px;width:100%;padding:14px;font-size:17px;font-weight:1000}.specialIndex{color:#7b3cc4!important}.adminEmpty{text-align:center;color:#879da3;padding:32px!important;display:block!important}.adminPlaceholder{text-align:center;background:#fff;border-radius:25px;place-content:center;justify-items:center;min-height:430px;padding:35px;display:grid;box-shadow:0 8px 25px #143e4812}.adminPlaceholder>span{aspect-ratio:1;color:#fff;background:linear-gradient(135deg,#15b9c9,#39cf8d);border-radius:50%;place-items:center;width:82px;font-size:38px;display:grid}.adminPlaceholder h1{margin:18px 0 6px}.adminPlaceholder p{color:#7d9298;max-width:480px;line-height:1.7}.specialLevelCard{color:#fff;position:relative;background:linear-gradient(145deg,#34196a,#8f3eb0)!important;border:3px solid #b756d1!important;box-shadow:0 0 0 2px #ffe371,0 5px 12px #35125b5c!important}.specialLevelCard img{filter:brightness(.62)saturate(1.15)}.specialLevelCard .specialQuestion{color:#fff6a4;text-shadow:0 4px #4c1b74,0 0 14px #fff58c;z-index:2;place-items:center;font-size:clamp(44px,8vw,72px);display:grid;position:absolute;inset:0 0 26px}.specialLevelCard .levelNo{font-weight:1000;color:#fff7b2!important}.specialLevelCard.reserved img{filter:blur(4px)brightness(.35)saturate(.8)}@media (width<=600px){.adminSectionTabs{grid-template-columns:repeat(2,1fr)}.specialGenerator>div{grid-template-columns:1fr}.specialGenerator{padding:15px}}.dailyHero{background:linear-gradient(135deg,#087f9d,#24bf99)!important}.dailyGenerator{margin-bottom:18px}.dailyDateFields{grid-template-columns:1fr auto 1fr minmax(120px,.65fr);align-items:end;gap:12px;margin-top:16px;display:grid}.dailyDateFields>span{color:#55747c;padding-bottom:15px;font-size:22px;font-weight:900}.dailyDateFields label{color:#527078;gap:7px;font-weight:800;display:grid}.dailyDateFields input{color:#234650;background:#fff;border:2px solid #d1e3e6;border-radius:13px;width:100%;padding:12px;font-size:16px}.dailyCount{color:#197564;background:#ecfbf7;border:2px solid #bde5e4;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;min-height:51px;padding:8px 14px;display:flex}.dailyCount small{color:#66898a}.dailyCount strong{font-size:18px}.dailyRangeHint{color:#168a82;margin:12px 0 0;font-weight:800}.dailyLevelManagement{margin-bottom:30px}.dailyListHeading{justify-content:space-between;align-items:end;gap:18px;padding:20px 22px 12px;display:flex}.dailyListHeading small{color:#0c9eae;font-weight:1000}.dailyListHeading h2{color:#21444e;margin:3px 0 0}.dailyListHeading>strong{color:#12836e;background:#dff8f1;border-radius:999px;padding:8px 13px}.dailyIndex{color:#087f92!important;letter-spacing:0!important;min-width:116px!important;font-size:14px!important}@media (width<=700px){.dailyDateFields{grid-template-columns:1fr 12px 1fr}.dailyCount{grid-column:1/-1}.dailyListHeading{padding-inline:8px}.dailyIndex{min-width:94px!important;font-size:12px!important}}.dots.tenDots{grid-template-columns:repeat(5,1fr);gap:5px 8px;display:grid}.dots.tenDots span{width:18px;height:18px}.specialGeneratorPanel{margin-bottom:18px}.specialFields{grid-template-columns:2fr 1fr;gap:12px;margin-top:16px;display:grid}.specialFields label{color:#527078;gap:7px;font-weight:900;display:grid}.specialFields select,.specialFields input{color:#234650;background:#fff;border:2px solid #d1e3e6;border-radius:13px;width:100%;padding:12px;font-size:16px}.specialGenerateButton{background:linear-gradient(135deg,#6745cf,#c64fb7)!important}@media (width<=600px){.specialFields{grid-template-columns:1fr}}.legalPage{color:#5e382d;background:linear-gradient(#fff3d9,#ffebc9);min-height:100vh;padding:30px 16px 60px}.legalShell{width:min(100%,760px);margin:auto}.legalHeader{align-items:center;gap:18px;margin-bottom:20px;display:flex}.legalBack{color:#8e4a30;background:#ffd88c;border:1px solid #e7cfae;border-radius:50%;width:48px;height:48px;font-size:32px;line-height:1;box-shadow:0 3px 7px #ad7a4933}.legalHeader div{flex:1}.legalHeader small{color:#ba7658;letter-spacing:.12em;font-weight:800;display:block}.legalHeader h1{color:#8d422d;margin:4px 0 0;font-size:clamp(26px,6vw,38px)}.legalCard{background:#fffdf8;border:1px solid #eedcc5;border-radius:20px;padding:clamp(22px,5vw,40px);box-shadow:0 8px 24px #9f70431c}.legalUpdated{color:#8b756c;margin:0 0 24px;font-size:14px}.legalCard h2{color:#9b4c33;margin:30px 0 8px;font-size:20px}.legalCard h2:first-of-type{margin-top:0}.legalCard p,.legalCard li{font-size:15px;line-height:1.75}.legalCard ul{padding-left:22px}.legalCard a{color:#008fa2}.legalFooter{text-align:center;color:#9c8275;margin-top:24px;font-size:13px}@media (width<=520px){.legalPage{padding-top:18px}.legalCard{border-radius:16px}.legalHeader{gap:12px}}.legalBack{background-color:#0000;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='32' r='28' fill='%23ffda8d' stroke='%238c4a31' stroke-width='3'/%3E%3Cpath d='M35 18 21 32l14 14M22 32h23' fill='none' stroke='%238c4a31' stroke-width='6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;border:0;border-radius:50%;flex:0 0 48px;width:48px;height:48px;padding:0;font-size:0;line-height:0;display:block;box-shadow:0 3px 7px #ad7a4933}
