:root{--wish-button-left:50%;--wish-button-bottom:clamp(6px, 1.6vh, 14px);--wish-button-half-height:26px;--rank-color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f2fdff;background:#010914;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;position:relative;overflow:hidden}body{background:#010914;min-width:320px}body.admin-page{color:#e8f7ff;background:radial-gradient(circle at 12% 0,rgba(86,220,255,.18),transparent 30%),radial-gradient(circle at 88% 8%,rgba(255,80,128,.16),transparent 28%),#06101d;min-height:100%;overflow:auto}.admin-shell{width:min(1180px,100vw - 32px);margin:0 auto;padding:28px 0 44px}.admin-header,.admin-panel,.admin-stats article{backdrop-filter:blur(12px);background:rgba(5,18,31,.74);border:1px solid rgba(142,232,255,.18);border-radius:10px;box-shadow:0 18px 54px rgba(0,0,0,.26)}.admin-header{justify-content:space-between;align-items:end;gap:24px;padding:22px;display:flex}.admin-header h1,.admin-panel h2{color:#ffd86a;letter-spacing:0;margin:0}.admin-header p{color:rgba(224,248,255,.7);margin:8px 0 0}.admin-token-field,.admin-form-grid label{color:rgba(224,248,255,.72);gap:7px;font-size:13px;display:grid}.admin-token-field input,.admin-form-grid input,.admin-panel header input,.admin-table input{color:#f4fdff;background:rgba(0,7,14,.42);border:1px solid rgba(142,232,255,.24);border-radius:7px;min-height:36px;font:500 14px/1.2 Inter,ui-sans-serif,system-ui,sans-serif}.admin-token-field input{width:min(360px,46vw);padding:0 11px}.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.admin-stats article{gap:8px;padding:17px;display:grid}.admin-stats span{color:rgba(224,248,255,.66);font-size:13px}.admin-stats strong{color:#fff;font-size:25px}.admin-panel{margin-top:16px;padding:18px}.admin-panel header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.admin-panel button{color:#ffe99d;cursor:pointer;background:rgba(255,216,106,.12);border:1px solid rgba(255,216,106,.44);border-radius:7px;min-height:36px;font-weight:760}.admin-form-grid{grid-template-columns:minmax(180px,260px) auto;align-items:end;gap:14px;display:grid}.admin-form-grid input{padding:0 10px}.admin-table-wrap{overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:920px}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid rgba(142,232,255,.12);padding:10px 8px}.admin-table th{color:rgba(224,248,255,.62);font-size:12px;font-weight:680}.admin-table input{width:100%;padding:0 8px}.admin-identity{color:#ffd86a;white-space:nowrap}.admin-status{color:rgba(224,248,255,.72);min-height:22px}.admin-status[data-tone=ok]{color:#8cffb8}.admin-status[data-tone=error]{color:#ff8b9a}@media (max-width:760px){.admin-header,.admin-panel header{flex-direction:column;align-items:stretch}.admin-token-field input{width:100%}.admin-stats,.admin-form-grid{grid-template-columns:1fr}}#app{isolation:isolate;overflow:hidden}#app.is-display-only{width:100vw;height:100vh}#app.is-display-only:after,#app.is-display-only>.wish-button,#app.is-display-only>.charge-rank,#app.is-display-only>.account-entry,#app.is-display-only>.account-status,#app.is-display-only>.view-debug,#app.is-display-only>.overlay-backdrop,#app.is-display-only>.ritual-panel{display:none!important}#app.is-display-only>.hud,#app.is-display-only>.tree-power{display:block}#app.is-display-only>.top-controls{display:flex}#app.is-display-only>[hidden]{display:none!important}#world{outline:none;width:100%;height:100%;transition:filter .52s;display:block}#app:after{z-index:3;background:radial-gradient(circle at var(--wish-button-left) calc(100% - var(--wish-button-bottom) - 24px), color-mix(in srgb, var(--rank-color,#fff) 24%, transparent), transparent 27%), radial-gradient(circle at var(--wish-button-left) calc(100% - var(--wish-button-bottom) - 24px), color-mix(in srgb, var(--rank-color,#fff) 18%, transparent), transparent 42%), rgba(0,0,0,.18);content:"";opacity:0;pointer-events:none;transition:opacity .52s;position:absolute;top:0;bottom:0;left:0;right:0}#app>.hud,#app>.top-controls,#app>.wish-button,#app>.charge-rank,#app>.account-entry,#app>.account-status,#app>.tree-power,#app>.blessing-toast,#app>.wish-strip-panel,#app>.wish-strip-focus,#app>.view-debug,#app>.overlay-backdrop,#app>.ritual-panel{position:absolute}.view-debug{z-index:5;color:rgba(214,244,255,.8);pointer-events:none;text-shadow:0 0 10px rgba(70,220,255,.3);backdrop-filter:blur(6px);background:rgba(3,12,22,.44);border:1px solid rgba(117,238,255,.28);border-radius:8px;gap:3px;max-width:min(260px,100vw - 20px);padding:8px 10px;font:500 11px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:grid;top:max(82px,min(10vh,118px));right:max(10px,min(3vw,28px))}.view-debug strong{color:rgba(255,218,106,.92);font-weight:760}.view-debug span{white-space:nowrap}#app.is-ritual-charging #world{filter:brightness(.86)saturate(1.08)}#app.is-ritual-charging:after{opacity:1}.hud{pointer-events:none;text-shadow:0 0 18px rgba(67,211,255,.45);max-width:min(380px,100vw - 36px);top:max(18px,min(5vh,52px));left:max(18px,min(4vw,54px))}.hud h1{color:#ffd86a;letter-spacing:0;text-shadow:0 0 10px rgba(255,218,106,.62),0 0 26px rgba(255,168,54,.38),0 0 46px rgba(255,86,42,.18);margin:0;font-size:max(40px,min(7vw,82px));font-weight:780;line-height:.95}.hud p{color:rgba(216,248,255,.78);margin:12px 0 0;font-size:max(14px,min(2vw,18px))}.top-controls{z-index:6;flex-direction:row;align-items:center;gap:10px;display:flex;top:max(18px,min(4vh,38px));right:max(18px,min(4vw,48px))}.language-toggle,.music-toggle{color:rgba(226,252,255,.96);cursor:pointer;letter-spacing:.08em;background:rgba(4,20,36,.42);border:1px solid rgba(117,238,255,.58);border-radius:999px;width:54px;height:36px;font:760 13px/1 Inter,ui-sans-serif,system-ui,sans-serif;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;box-shadow:0 0 18px rgba(55,210,255,.26),inset 0 0 14px rgba(130,245,255,.12)}.language-toggle:hover,.music-toggle:hover{background:rgba(8,42,64,.54);border-color:rgba(160,250,255,.82);transform:translateY(-1px);box-shadow:0 0 26px rgba(55,210,255,.36),inset 0 0 16px rgba(130,245,255,.18)}.language-toggle:active,.music-toggle:active{transform:translateY(1px)scale(.98)}.music-toggle{color:rgba(255,234,166,.94);background:rgba(36,22,6,.34);border-color:rgba(255,218,106,.5);width:36px;min-width:36px;height:36px;padding:0;font:780 17px/1 Inter,ui-sans-serif,system-ui,sans-serif;box-shadow:0 0 18px rgba(255,184,64,.18),inset 0 0 14px rgba(255,230,150,.1)}.music-toggle.is-off{color:rgba(209,239,246,.62);background:rgba(4,20,36,.3);border-color:rgba(128,178,196,.38);box-shadow:0 0 14px rgba(55,210,255,.1),inset 0 0 12px rgba(130,245,255,.06)}.account-entry{right:1ch;bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 74px);z-index:4;color:rgba(255,226,124,.94);cursor:pointer;pointer-events:auto;text-align:right;text-shadow:0 0 10px rgba(255,222,116,.68),0 0 28px rgba(255,130,42,.24),0 0 52px rgba(255,50,78,.12);white-space:nowrap;background:0 0;border:0;padding:0;font:700 18px/1 Inter,ui-sans-serif,system-ui,sans-serif;transition:color .18s,opacity .18s,transform .18s;transform:translateY(50%)}.account-entry:hover{color:rgba(255,241,164,.98);transform:translateY(50%)translate(-2px)}.overlay-backdrop{z-index:8;backdrop-filter:blur(10px);background:radial-gradient(circle at 50% 36%,rgba(78,124,255,.18),transparent 32%),rgba(1,5,12,.68);top:0;bottom:0;left:0;right:0}.ritual-panel{z-index:9;color:rgba(240,248,255,.94);background:radial-gradient(at top,rgba(255,212,120,.12),transparent 46%),radial-gradient(at bottom,rgba(118,180,255,.08),transparent 54%),linear-gradient(rgba(10,18,32,.92),rgba(5,10,20,.96));border:1px solid rgba(255,218,130,.24);border-radius:16px;width:min(520px,100% - 28px);max-height:min(78vh,760px);padding:28px 24px 22px;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 18px 68px rgba(0,0,0,.46),0 0 38px rgba(255,182,76,.12),inset 0 0 26px rgba(255,238,184,.05)}.ritual-panel-header{margin-bottom:18px;padding-right:28px}.ritual-panel-header h2{color:#ffd86a;text-shadow:0 0 12px rgba(255,214,112,.62),0 0 32px rgba(255,124,70,.18);margin:0;font-size:max(24px,min(4vw,34px));line-height:1.05}.ritual-panel-header p{color:rgba(214,238,255,.76);margin:10px 0 0;font-size:max(12px,min(2.5vw,15px));line-height:1.45}.ritual-panel-close{color:rgba(255,241,194,.86);cursor:pointer;background:rgba(255,255,255,.04);border:1px solid rgba(255,220,146,.26);border-radius:999px;width:34px;height:34px;font:780 20px/1 Inter,ui-sans-serif,system-ui,sans-serif;position:absolute;top:16px;right:16px}.ritual-panel-body{gap:14px;display:grid}.ritual-panel-body[hidden],.overlay-backdrop[hidden],.ritual-panel[hidden]{display:none!important}.ritual-section{background:linear-gradient(rgba(255,244,210,.04),rgba(84,130,255,.02)),rgba(255,255,255,.02);border:1px solid rgba(132,188,255,.16);border-radius:12px;padding:14px 14px 12px}.ritual-section-compact{gap:10px;display:grid}.ritual-section h3{color:rgba(255,222,146,.94);margin:0 0 10px;font-size:15px;line-height:1.2}.identity-rules{gap:8px;display:grid}.identity-rule{grid-template-columns:auto 1fr;align-items:start;gap:10px 12px;display:grid}.identity-color{border-radius:50%;width:11px;height:11px;margin-top:4px;box-shadow:0 0 14px}.identity-copy strong,.identity-copy span{display:block}.identity-copy strong{margin-bottom:2px;font-size:14px}.identity-copy span,.energy-rules li,.panel-hint,.bind-status{color:rgba(220,236,246,.78);font-size:13px;line-height:1.55}.energy-rules{margin:0;padding-left:18px}.panel-action-button{color:rgba(255,239,176,.96);cursor:pointer;background:linear-gradient(rgba(255,242,186,.18),rgba(255,182,82,.08)),rgba(24,40,20,.32);border:1px solid rgba(255,218,126,.34);border-radius:999px;justify-self:start;min-width:112px;height:38px;padding:0 16px;font:720 13px/1 Inter,ui-sans-serif,system-ui,sans-serif}.nickname-field{justify-items:start;gap:6px;max-width:260px;display:grid}.nickname-field span{color:rgba(255,222,146,.84);font-size:12px;font-weight:700}.nickname-field input{color:rgba(255,244,210,.96);background:rgba(4,12,20,.42);border:1px solid rgba(255,220,138,.2);border-radius:12px;outline:none;width:min(240px,100%);height:38px;padding:0 12px;font:600 14px/1 Inter,ui-sans-serif,system-ui,sans-serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.024),0 0 18px rgba(255,196,92,.06)}.nickname-field input:focus{border-color:rgba(255,224,142,.52);box-shadow:0 0 18px rgba(255,210,112,.16),inset 0 0 0 1px rgba(255,255,255,.04)}.recharge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.recharge-option{color:inherit;cursor:pointer;text-align:left;background:linear-gradient(rgba(255,255,255,.05),rgba(0,0,0,.08)),rgba(255,255,255,.02);border:1px solid rgba(255,220,138,.18);border-radius:12px;padding:12px 12px 10px}.recharge-option strong,.recharge-option span{display:block}.recharge-option strong{color:rgba(255,230,154,.98);font-size:15px}.recharge-option span{color:rgba(212,232,246,.68);margin-top:4px;font-size:12px}.wish-strip-slots{flex-wrap:wrap;gap:8px;display:flex}.wish-strip-slot{color:rgba(236,228,212,.9);cursor:pointer;background:rgba(255,255,255,.04);border:1px solid rgba(255,218,126,.18);border-radius:999px;min-width:74px;height:34px;padding:0 12px;font:700 12px/1 Inter,ui-sans-serif,system-ui,sans-serif}.wish-strip-slot.is-selected{color:rgba(255,240,214,.98);background:linear-gradient(rgba(255,230,180,.16),rgba(255,120,120,.08)),rgba(255,255,255,.06);border-color:rgba(255,216,138,.46);box-shadow:0 0 16px rgba(255,162,120,.14),inset 0 0 14px rgba(255,220,172,.06)}.wish-strip-editor{color:rgba(246,236,228,.94);resize:vertical;background:rgba(7,12,20,.74);border:1px solid rgba(255,218,126,.18);border-radius:12px;width:100%;min-height:92px;padding:12px 14px;font:500 14px/1.5 Inter,ui-sans-serif,system-ui,sans-serif}.wish-strip-editor::placeholder{color:rgba(214,208,198,.42)}.wish-strip-actions{justify-content:flex-end;display:flex}.wish-button{left:var(--wish-button-left);bottom:var(--wish-button-bottom);z-index:4;border-color:color-mix(in srgb, var(--rank-color,#fff) 78%, transparent);color:rgba(255,235,166,.96);cursor:pointer;letter-spacing:.12em;text-shadow:0 0 8px rgba(255,214,100,.78),0 0 18px rgba(255,72,80,.24);-webkit-tap-highlight-color:transparent;touch-action:none;user-select:none;background:radial-gradient(rgba(54,15,4,.18) 0,rgba(54,15,4,.18) 46%,transparent 63%),linear-gradient(90deg,rgba(255,238,170,.92),rgba(255,204,88,.62) 16%,transparent 34%,transparent 66%,rgba(255,204,88,.62) 84%,rgba(255,238,170,.92)),linear-gradient(rgba(255,247,196,.38),rgba(95,42,8,.14)),rgba(49,18,4,.24);border-radius:999px;min-width:132px;height:52px;padding:0 32px;font:820 17px/1 Inter,ui-sans-serif,system-ui,sans-serif;transition:background .18s,box-shadow .18s,transform .18s;transform:translate(-50%);box-shadow:0 0 20px rgba(255,198,82,.46),0 0 42px rgba(255,64,76,.18),inset 0 0 0 1px rgba(255,246,190,.34),inset 0 1px 12px rgba(255,248,202,.26),inset 0 -1px 16px rgba(42,12,3,.42)}.wish-button,.wish-button:hover,.wish-button.is-charging{background:radial-gradient(ellipse at 50% 50%, color-mix(in srgb, var(--rank-color,#fff) 24%, transparent) 0 48%, transparent 66%), linear-gradient(90deg, color-mix(in srgb, var(--rank-color,#fff) 82%, white 18%), color-mix(in srgb, var(--rank-color,#fff) 46%, transparent) 16%, transparent 34% 66%, color-mix(in srgb, var(--rank-color,#fff) 46%, transparent) 84%, color-mix(in srgb, var(--rank-color,#fff) 82%, white 18%)), linear-gradient(180deg, color-mix(in srgb, var(--rank-color,#fff) 28%, transparent), rgba(6,12,20,.2)), rgba(4,12,20,.25);box-shadow:0 0 22px color-mix(in srgb, var(--rank-color,#fff) 58%, transparent), 0 0 52px color-mix(in srgb, var(--rank-color,#fff) 30%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--rank-color,#fff) 42%, white 8%), inset 0 1px 14px color-mix(in srgb, var(--rank-color,#fff) 30%, transparent), inset 0 -1px 16px rgba(2,8,16,.42);color:color-mix(in srgb, var(--rank-color,#fff) 72%, white 28%);text-shadow:0 0 8px color-mix(in srgb, var(--rank-color,#fff) 82%, transparent), 0 0 18px color-mix(in srgb, var(--rank-color,#fff) 36%, transparent)}.charge-rank{left:0;bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 74px);z-index:4;color:var(--rank-color,rgba(255,255,255,.92));pointer-events:none;text-align:left;text-shadow:0 0 10px color-mix(in srgb, var(--rank-color,#fff) 74%, transparent), 0 0 22px color-mix(in srgb, var(--rank-color,#fff) 42%, transparent);white-space:nowrap;font-family:inherit;font-size:18px;font-weight:700;line-height:1;transform:translateY(50%)}.account-status{left:2ch;top:calc(100% - var(--wish-button-bottom) - var(--wish-button-half-height));z-index:4;color:rgba(232,243,248,.86);pointer-events:none;text-align:left;text-shadow:0 0 12px rgba(12,18,26,.42),0 0 18px rgba(82,216,255,.16);place-items:start;gap:4px;font-size:max(11px,min(1.5vw,13px));font-weight:500;line-height:1.12;display:grid;transform:translateY(-50%)}.account-status span{white-space:nowrap;display:block;position:relative}.account-status span:last-child{font-size:inherit}.account-status .is-online{color:rgba(232,243,248,.86);text-shadow:0 0 12px rgba(12,18,26,.42),0 0 18px rgba(82,216,255,.16)}.account-status .is-offline,.account-status .is-error{color:rgba(255,108,122,.94);text-shadow:0 0 10px rgba(255,88,108,.34),0 0 22px rgba(255,88,108,.16)}.account-status .is-connecting{color:rgba(232,243,248,.8);text-shadow:0 0 12px rgba(12,18,26,.42),0 0 18px rgba(82,216,255,.14)}.tree-power{z-index:4;color:rgba(255,226,124,.94);letter-spacing:0;pointer-events:none;text-align:center;text-shadow:0 0 10px rgba(255,222,116,.72),0 0 28px rgba(255,130,42,.28),0 0 54px rgba(255,50,78,.18);white-space:nowrap;font-size:max(17px,min(2.6vw,28px));font-weight:760;top:max(92px,min(13.5vh,150px));left:50%;transform:translate(-50%)}.tree-power-value{color:rgba(255,241,164,.98);transform-origin:50%;will-change:filter, transform;min-width:1.8em;display:inline-block;position:relative}.tree-power-value:after{color:rgba(255,246,188,0);content:attr(data-value);opacity:0;pointer-events:none;text-shadow:none;transform-origin:50%;position:absolute;top:0;bottom:0;left:0;right:0;transform:scale(1)}.tree-power-value.is-surging{animation:1.18s cubic-bezier(.14,.96,.18,1) both treePowerValueIgnite}.tree-power-value.is-surging:after{animation:1.18s cubic-bezier(.1,.84,.16,1) both treePowerValueExpand}@keyframes treePowerValueIgnite{0%{color:rgba(255,241,164,.98);filter:brightness();text-shadow:0 0 10px rgba(255,222,116,.72),0 0 28px rgba(255,130,42,.28);transform:scale(1)}28%{color:#fff6bc;filter:brightness(1.36);text-shadow:0 0 16px #fffad2,0 0 48px rgba(255,194,78,.72),0 0 94px rgba(255,68,92,.42);transform:scale(1.62)}70%{color:#fff1a4;filter:brightness(1.12);text-shadow:0 0 12px rgba(255,238,160,.86),0 0 34px rgba(255,150,64,.36);transform:scale(1.16)}to{color:rgba(255,241,164,.98);filter:brightness();text-shadow:0 0 10px rgba(255,222,116,.72),0 0 28px rgba(255,130,42,.28);transform:scale(1)}}@keyframes treePowerValueExpand{0%{color:rgba(255,246,188,.96);filter:blur();opacity:.95;text-shadow:0 0 12px #fffad2,0 0 42px rgba(255,194,78,.62),0 0 88px rgba(255,66,96,.28);transform:scale(1)}58%{opacity:.42;transform:scale(2.35)}to{color:rgba(255,220,104,0);filter:blur(5px);opacity:0;text-shadow:0 0 30px rgba(255,220,104,.52),0 0 110px rgba(255,72,92,.28);transform:scale(3.25)}}.wish-button:before,.wish-button:after{z-index:-1;border:1px solid color-mix(in srgb, var(--rank-color,#fff) 64%, transparent);border-radius:inherit;content:"";opacity:0;pointer-events:none;position:absolute;top:-16px;bottom:-16px;left:-30px;right:-30px;transform:scale(.78)}.wish-button:after{border-color:color-mix(in srgb, var(--rank-color,#fff) 38%, transparent);box-shadow:0 0 34px color-mix(in srgb, var(--rank-color,#fff) 34%, transparent);top:-30px;bottom:-30px;left:-58px;right:-58px}.wish-button:hover{background:radial-gradient(rgba(74,24,6,.22) 0,rgba(74,24,6,.22) 46%,transparent 63%),linear-gradient(90deg,#fff4ba,rgba(255,212,96,.72) 16%,transparent 34%,transparent 66%,rgba(255,212,96,.72) 84%,#fff4ba),linear-gradient(rgba(255,250,210,.42),rgba(95,42,8,.16)),rgba(56,20,5,.28);transform:translate(-50%)translateY(-1px);box-shadow:0 0 30px rgba(255,206,92,.64),0 0 56px rgba(255,72,92,.28),inset 0 0 0 1px rgba(255,250,204,.42),inset 0 1px 14px rgba(255,248,202,.34)}.wish-button:active{transform:translate(-50%)translateY(1px)scale(.98)}.wish-button.is-charging{background:radial-gradient(rgba(90,34,8,.28) 0,rgba(90,34,8,.28) 48%,transparent 64%),linear-gradient(90deg,#fffacc,rgba(255,220,104,.82) 17%,transparent 35%,transparent 65%,rgba(255,220,104,.82) 83%,#fffacc),linear-gradient(rgba(255,255,220,.48),rgba(116,50,8,.18)),rgba(72,24,4,.32);transform:translate(-50%)scale(1.03);box-shadow:0 0 32px rgba(255,224,126,.84),0 0 84px rgba(255,80,96,.5),0 0 128px rgba(255,182,62,.28),inset 0 1px 18px rgba(255,252,220,.66)}.wish-button:hover,.wish-button.is-charging,.wish-button.is-charging:hover{border-color:color-mix(in srgb, var(--rank-color,#fff) 86%, transparent);background:radial-gradient(ellipse at 50% 50%, color-mix(in srgb, var(--rank-color,#fff) 34%, transparent) 0 48%, transparent 66%), linear-gradient(90deg, color-mix(in srgb, var(--rank-color,#fff) 86%, white 14%), color-mix(in srgb, var(--rank-color,#fff) 58%, transparent) 17%, transparent 35% 65%, color-mix(in srgb, var(--rank-color,#fff) 58%, transparent) 83%, color-mix(in srgb, var(--rank-color,#fff) 86%, white 14%)), linear-gradient(180deg, color-mix(in srgb, var(--rank-color,#fff) 36%, transparent), rgba(6,12,20,.2)), rgba(4,12,20,.3);box-shadow:0 0 32px color-mix(in srgb, var(--rank-color,#fff) 82%, transparent), 0 0 84px color-mix(in srgb, var(--rank-color,#fff) 48%, transparent), 0 0 128px color-mix(in srgb, var(--rank-color,#fff) 28%, transparent), inset 0 1px 18px color-mix(in srgb, var(--rank-color,#fff) 42%, white 16%);color:color-mix(in srgb, var(--rank-color,#fff) 72%, white 28%);text-shadow:0 0 8px color-mix(in srgb, var(--rank-color,#fff) 86%, transparent), 0 0 20px color-mix(in srgb, var(--rank-color,#fff) 42%, transparent)}.wish-button.is-charging:before{animation:1.35s ease-out infinite wishRipple}.wish-button.is-charging:after{animation:1.35s ease-out .42s infinite wishRipple}.wish-button.is-charge-ready{box-shadow:0 0 42px color-mix(in srgb, var(--rank-color,#fff) 92%, transparent), 0 0 108px color-mix(in srgb, var(--rank-color,#fff) 58%, transparent), 0 0 168px color-mix(in srgb, var(--rank-color,#fff) 34%, transparent), inset 0 0 22px color-mix(in srgb, var(--rank-color,#fff) 48%, white 18%);transform:translate(-50%)scale(1.07)}.wish-button.is-charge-ready:before,.wish-button.is-charge-ready:after{animation-duration:.82s}.wish-strip-focus{z-index:5;opacity:0;pointer-events:none;width:126px;height:250px;bottom:max(92px,min(15vh,152px));right:max(18px,min(6vw,78px));transform:translate(18px,18px)scale(.82)}.wish-strip-focus.is-visible{animation:4.4s both focusStripScene}.focus-cord{transform-origin:top;background:linear-gradient(rgba(255,232,168,0),rgba(255,220,150,.8),rgba(110,22,18,.72));border-radius:999px;width:2px;height:86px;position:absolute;top:0;left:50%;transform:translate(-50%)rotate(-7deg)scaleY(.46);box-shadow:0 0 8px rgba(255,222,124,.76),0 0 18px rgba(255,74,86,.42)}.wish-strip-focus.is-visible .focus-cord{animation:4.4s both focusCordTighten}.focus-knot{background:radial-gradient(circle at 35% 28%,rgba(255,220,170,.72),transparent 22%),radial-gradient(circle at 50% 55%,#8b1519,#3e0508 78%);border-radius:50%;width:18px;height:18px;position:absolute;top:72px;left:50%;transform:translate(-50%,-50%)scale(.58);box-shadow:0 0 14px rgba(255,210,118,.72),0 0 30px rgba(255,38,64,.6)}.wish-strip-focus.is-visible .focus-knot{animation:4.4s both focusKnotGlow}.focus-strip{transform-origin:top;background:radial-gradient(at 34% 18%,rgba(255,178,128,.18),transparent 28%),radial-gradient(at 70% 72%,rgba(34,0,0,.22),transparent 38%),repeating-linear-gradient(96deg,rgba(255,238,204,.055) 0,rgba(255,238,204,.055) 1px,transparent 1px,transparent 8px),repeating-linear-gradient(181deg,rgba(255,220,190,.043) 0,rgba(255,220,190,.043) 1px,transparent 1px,transparent 15px),linear-gradient(90deg,rgba(30,0,4,.62),transparent 16%,rgba(255,144,112,.13) 48%,transparent 68%,rgba(24,0,4,.58)),linear-gradient(#86131a,#5f050d 58%,#310208 100%);border-radius:4px 3px 10px 8px;width:66px;height:158px;position:absolute;top:78px;left:50%;transform:translate(-50%)rotate(2deg)scaleX(.72)scaleY(.08);box-shadow:0 0 14px rgba(150,18,28,.44),0 0 34px rgba(255,22,46,.22),inset 2px 0 8px rgba(255,156,122,.1),inset -4px 0 10px rgba(20,0,4,.46),inset 0 0 22px rgba(255,160,130,.08)}.focus-strip:before{border-radius:inherit;content:"";opacity:.86;mix-blend-mode:screen;background:radial-gradient(circle at 22% 18%,rgba(255,220,180,.16),transparent 14%),radial-gradient(circle at 64% 42%,rgba(0,0,0,.16),transparent 18%),radial-gradient(circle at 48% 76%,rgba(255,190,150,.08),transparent 16%),linear-gradient(90deg,transparent,rgba(255,218,188,.16),transparent),repeating-linear-gradient(178deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 1px,transparent 1px,transparent 11px);position:absolute;top:1px;bottom:1px;left:2px;right:2px}.focus-strip:after{content:"";opacity:0;z-index:-1;background:radial-gradient(circle,rgba(144,8,20,.38),transparent 67%);border-radius:50%;position:absolute;top:-28px;bottom:-28px;left:-34px;right:-34px}.wish-strip-focus.is-visible .focus-strip{animation:4.4s reverse both focusStripUnfold}.wish-strip-focus.is-visible .focus-strip:after{animation:4.4s both focusStripAura}.blessing-toast{--blessing-start-x:0px;--blessing-start-y:-180px;--oracle-x:50%;--oracle-color:#ffd84a;--oracle-hidden-scale:.58;--oracle-start-scale:.08;--oracle-mid-scale:.9;--oracle-rest-scale:.8;--burn-front:0%;--burn-flicker:1;--thread-color:rgba(255,232,146,.92);left:var(--oracle-x);z-index:5;border:1px solid color-mix(in srgb, var(--oracle-color) 34%, transparent);width:min(440px,100% - 24px);min-height:112px;box-shadow:0 0 28px rgba(255,28,64,.18), 0 0 58px rgba(255,44,86,.12), 0 0 30px color-mix(in srgb, var(--oracle-color) 22%, transparent), inset 0 0 20px color-mix(in srgb, var(--oracle-color) 12%, transparent);color:#fff3f5;isolation:isolate;opacity:0;pointer-events:none;text-align:center;text-shadow:0 0 12px rgba(255,96,120,.82),0 0 24px rgba(255,26,58,.48);transform:translate(-50%, -50%) scale(var(--oracle-hidden-scale));will-change:opacity, transform, filter;background:radial-gradient(at 50% 0,rgba(255,232,150,.17),transparent 52%),radial-gradient(at 50% 100%,rgba(255,162,80,.09),transparent 58%),linear-gradient(92deg,rgba(82,45,10,.18),rgba(128,88,28,.26),rgba(62,36,9,.16)),rgba(49,31,10,.22);border-radius:10px;padding:38px 34px 22px;position:absolute;top:75%;overflow:visible}.blessing-toast:before,.blessing-toast:after{z-index:0;content:"";pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,244,200,.38),transparent);height:1px;position:absolute;left:14px;right:14px}.blessing-toast:before{top:10px}.blessing-toast:after{bottom:10px}.blessing-toast strong,.blessing-toast span{z-index:1;display:block;position:relative}.blessing-toast strong{color:var(--oracle-color);letter-spacing:.08em;margin-bottom:8px;font-size:max(24px,min(5vw,34px));font-weight:780;line-height:1}.blessing-toast span{color:color-mix(in srgb, var(--oracle-color) 52%, white 48%);letter-spacing:.04em;font-size:max(15px,min(3.8vw,19px));font-weight:620;line-height:1.35}.blessing-toast small{z-index:3;color:color-mix(in srgb, var(--oracle-color) 78%, white 22%);letter-spacing:.06em;text-shadow:0 0 8px color-mix(in srgb, var(--oracle-color) 82%, transparent), 0 0 18px color-mix(in srgb, var(--oracle-color) 46%, transparent);font:760 18px/1 KaiTi,STKaiti,Kaiti SC,serif;position:absolute;top:10px;left:14px}.blessing-toast.is-revelation{--oracle-x:clamp(108px, calc(25% - 38px), 360px);--oracle-color:#d66dff;width:min(340px,50% - 18px)}.blessing-toast.is-blessing{--oracle-x:clamp(calc(100% - 360px), calc(75% + 38px), calc(100% - 108px));--oracle-color:#ffd84a;width:min(340px,50% - 18px)}.blessing-toast.is-visible{opacity:1;pointer-events:auto;animation:.98s cubic-bezier(.17,.9,.18,1) both blessingReveal}.blessing-toast.is-burning{opacity:1;pointer-events:none;transform:translate(-50%, -50%) scale(var(--oracle-rest-scale));filter:brightness(calc(1 + var(--burn-flicker) * .3)) drop-shadow(0 0 9px color-mix(in srgb, var(--oracle-color) 72%, transparent));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.blessing-toast.is-burning:before{top:auto;bottom:calc(var(--burn-front) - 9px);z-index:6;background:radial-gradient(ellipse at 8% 75%, transparent 0 22%, var(--oracle-color) 28%, transparent 52%), radial-gradient(ellipse at 24% 42%, transparent 0 18%, var(--oracle-color) 25%, transparent 48%), radial-gradient(ellipse at 44% 70%, transparent 0 20%, white 23%, var(--oracle-color) 34%, transparent 58%), radial-gradient(ellipse at 65% 40%, transparent 0 20%, var(--oracle-color) 27%, transparent 52%), radial-gradient(ellipse at 86% 72%, transparent 0 18%, white 22%, var(--oracle-color) 32%, transparent 58%);height:18px;box-shadow:0 -4px 16px color-mix(in srgb, var(--oracle-color) 92%, transparent), 0 -10px 32px color-mix(in srgb, var(--oracle-color) 44%, transparent);opacity:var(--burn-flicker);border-radius:50%;animation:.16s steps(2,end) infinite oracleBurnFront;left:-3px;right:-3px}.blessing-toast.is-burning:after{top:auto;bottom:var(--burn-front);z-index:7;background:var(--oracle-color);width:3px;height:3px;box-shadow:24px 2px 0 var(--oracle-color), 48px -5px 0 color-mix(in srgb, var(--oracle-color) 72%, white 28%), 74px 4px 0 var(--oracle-color), 104px -2px 0 color-mix(in srgb, var(--oracle-color) 78%, white 22%), 134px 3px 0 var(--oracle-color), 168px -4px 0 color-mix(in srgb, var(--oracle-color) 68%, white 32%);opacity:0;border-radius:50%;animation:.72s ease-out infinite oracleEmbers;left:14%;right:auto}@keyframes blessingReveal{0%{filter:blur(9px);opacity:0;transform:translate(-50%, -50%) translate(var(--blessing-start-x), var(--blessing-start-y)) scale(var(--oracle-start-scale))}52%{filter:blur(1px);opacity:1;transform:translate(-50%, -50%) translate(0, 0) scale(var(--oracle-mid-scale))}to{filter:blur();opacity:1;transform:translate(-50%, -50%) translate(0, 0) scale(var(--oracle-rest-scale))}}@keyframes oracleBurnFront{0%{opacity:.56;transform:translate(-1px)scaleX(.92)scaleY(.76)}50%{opacity:1;transform:translate(2px)scaleX(1.04)scaleY(1.2)}to{opacity:.72;transform:translate(-2px)scaleX(.96)scaleY(.88)}}@keyframes oracleEmbers{0%{filter:blur();opacity:0;transform:translateY(0)scale(.8)}18%{opacity:1}to{filter:blur(1.2px);opacity:0;transform:translate(18px,-48px)scale(.18)}}.wish-strip-panel{left:50%;bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 106px);z-index:7;color:rgba(255,242,232,.96);opacity:0;pointer-events:none;text-align:center;background:radial-gradient(at top,rgba(255,164,122,.14),transparent 55%),linear-gradient(rgba(20,14,20,.84),rgba(6,9,18,.92));border:1px solid rgba(255,214,138,.26);border-radius:12px;width:min(420px,100% - 36px);min-height:88px;padding:18px 20px 16px;transition:opacity .28s,transform .32s cubic-bezier(.2,.82,.18,1);transform:translate(-50%)translateY(14px)scale(.94);box-shadow:0 0 24px rgba(255,84,116,.12),0 16px 48px rgba(0,0,0,.34),inset 0 0 18px rgba(255,220,176,.05)}.wish-strip-panel strong,.wish-strip-panel span{display:block}.wish-strip-panel strong{color:rgba(255,222,162,.98);letter-spacing:.04em;text-shadow:0 0 12px rgba(255,210,136,.34),0 0 28px rgba(255,78,102,.14);margin-bottom:10px;font-size:max(16px,min(2.8vw,22px));font-weight:760}.wish-strip-panel span{color:rgba(246,229,221,.92);font-size:max(14px,min(2.5vw,17px));line-height:1.45}.wish-strip-panel.is-visible{opacity:1;transform:translate(-50%)translateY(0)scale(1)}@keyframes wishRipple{0%{opacity:.88;transform:scale(.76)}62%{opacity:.28}to{opacity:0;transform:scale(2.08)}}@keyframes focusStripScene{0%{opacity:0;filter:blur(7px);transform:translate(28px,22px)scale(.72)}14%{opacity:1;filter:blur();transform:translate(0)scale(1.04)}32%,78%{opacity:1;filter:blur();transform:translate(0)scale(1)}to{opacity:0;filter:blur(4px);transform:translate(12px,8px)scale(.92)}}@keyframes focusCordTighten{0%{opacity:0;transform:translate(-50%)rotate(-10deg)scaleY(.34)}24%{opacity:.82;transform:translate(-50%)rotate(-6deg)scaleY(.56)}48%,82%{opacity:1;transform:translate(-50%)rotate(0)scaleY(1)}to{opacity:0;transform:translate(-50%)rotate(0)scaleY(1)}}@keyframes focusKnotGlow{0%{opacity:0;transform:translate(-50%,-50%)scale(.42)}18%{opacity:1;transform:translate(-50%,-50%)scale(1.18)}42%,82%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.84)}}@keyframes focusStripUnfold{0%{opacity:0;filter:brightness(2.1)saturate(1.5);transform:translate(-50%)rotate(5deg)scaleX(.55)scaleY(.06)}16%{opacity:1;filter:brightness(2.4)saturate(1.6);transform:translate(-50%)rotate(4deg)scaleX(.68)scaleY(.18)}36%{opacity:1;filter:brightness(1.55)saturate(1.35);transform:translate(-50%)rotate(1.2deg)scaleX(1.04)scaleY(1.04)}48%,82%{opacity:1;filter:brightness(1.22)saturate(1.25);transform:translate(-50%)rotate(0)scaleX(1)scaleY(1)}to{opacity:0;filter:brightness()saturate();transform:translate(-50%)rotate(-1deg)scaleX(.94)scaleY(1)}}@keyframes focusStripAura{0%{opacity:0;transform:scale(.66)}18%{opacity:1;transform:scale(1.1)}48%,82%{opacity:.72;transform:scale(1)}to{opacity:0;transform:scale(1.12)}}@media (max-width:720px){.hud{max-width:min(260px,100vw - 94px);top:18px}.hud h1{font-size:34px;line-height:.98}.hud p{margin-top:8px;font-size:13px}.top-controls{gap:8px;top:18px;right:16px}.language-toggle{width:48px;height:34px;font-size:12px}.music-toggle{width:34px;min-width:34px;height:34px;font-size:15px}.wish-button{--wish-button-bottom:6px;--wish-button-half-height:24px;min-width:116px;height:48px;padding:0 26px;font-size:15px;bottom:6px}.charge-rank,.account-entry{bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 72px);font-size:16px}.account-status{gap:3px;font-size:11px;left:2ch}.tree-power{font-size:15px;top:94px}.blessing-toast{--oracle-hidden-scale:.52;--oracle-start-scale:.05;--oracle-mid-scale:.82;--oracle-rest-scale:.78;width:min(540px,100% - 10px);min-height:112px;padding:38px 30px 22px;top:75vh}.blessing-toast small{font-size:18px;top:10px;left:14px}.wish-strip-panel{bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 96px);width:min(460px,100% - 14px);padding:16px 16px 14px}.ritual-panel{width:min(480px,100% - 18px);max-height:82vh;padding:22px 16px 16px}.recharge-grid{grid-template-columns:1fr}}@media (max-width:380px){.blessing-toast{--oracle-hidden-scale:.48;--oracle-mid-scale:.76;--oracle-rest-scale:.72;width:min(520px,100% - 8px)}}@media (orientation:landscape){body{justify-content:center;align-items:stretch;display:flex}#app{width:min(56.25vh,100vw);max-width:100vw;height:100vh;max-height:100vh}.hud{max-width:min(240px,100% - 88px);top:18px;left:18px}.hud h1{font-size:34px}.hud p{margin-top:8px;font-size:13px}.top-controls{gap:8px;top:16px;right:14px}.language-toggle{width:44px;height:30px;font-size:10px}.music-toggle{width:30px;min-width:30px;height:30px;font-size:14px}.tree-power{font-size:15px;top:82px}.charge-rank,.account-entry{bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 58px);font-size:15px}.account-status{gap:3px;font-size:10px;left:2ch}.wish-strip-panel{bottom:calc(var(--wish-button-bottom) + var(--wish-button-half-height) + 88px);width:min(440px,100% - 12px)}.wish-button{--wish-button-bottom:8px;--wish-button-half-height:22px;min-width:108px;height:44px;padding:0 22px;font-size:14px;bottom:8px}.blessing-toast{min-height:98px;padding:34px 24px 18px}.blessing-toast strong{font-size:20px}.blessing-toast span{font-size:13px}.blessing-toast small{font-size:15px}.ritual-panel{width:min(430px,100% - 18px);max-height:80vh}}
