:root{--bg:#08090d;--text:#f2f4f8;--muted:#9aa1ad;--line:#ffffff14;--surface:hsla(0,0%,100%,.045);--surface-strong:#ffffff14;--accent:#7aa2ff;--accent-soft:#7aa2ff29;--radius-lg:24px;--radius-md:18px;--ease:cubic-bezier(0.22,1,0.36,1);-webkit-tap-highlight-color:transparent;color-scheme:dark}*{box-sizing:border-box}#root,body,html{min-height:100%}body,html{background:#08090d;background:var(--bg)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#f2f4f8;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Roboto,Helvetica Neue,sans-serif;margin:0;min-height:100dvh}button{background:none;border:0;cursor:pointer;font:inherit;padding:0}a,button{color:inherit}a{text-decoration:none}h1,h2,h3,p,ul{margin:0}ul{list-style:none;padding:0}::selection{background:#7aa2ff29;background:var(--accent-soft)}:focus-visible{outline:2px solid #7aa2ff;outline:2px solid var(--accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-delay:0ms!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.home{display:flex;flex-direction:column;isolation:isolate;min-height:100dvh;overflow:hidden;padding:max(32px,env(safe-area-inset-top)) 28px max(28px,env(safe-area-inset-bottom));position:relative}.home__aurora{border-radius:50%;filter:blur(90px);opacity:.5;pointer-events:none;position:absolute;z-index:-1}.home__aurora--top{background:radial-gradient(circle,#7aa2ff59,#0000 65%);height:48vmax;right:-14vmax;top:-18vmax;width:48vmax}.home__aurora--bottom{background:radial-gradient(circle,#a78bfa38,#0000 65%);bottom:-24vmax;height:52vmax;left:-18vmax;width:52vmax}.home__hero{animation:home-rise .7s var(--ease) both;display:flex;flex:1 1;flex-direction:column;justify-content:center;max-width:720px}.home__date{color:var(--muted);font-size:.95rem;letter-spacing:.02em}.home__brand{font-size:clamp(4.5rem,22vw,10rem);font-weight:600;letter-spacing:-.055em;line-height:.9;margin-top:10px}.home__tagline{color:var(--muted);font-size:1.05rem;letter-spacing:.01em;margin-top:18px}.home__fab{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#161820b8;border:1px solid var(--line);border-radius:50%;bottom:max(24px,env(safe-area-inset-bottom));box-shadow:0 12px 32px #00000073,inset 0 1px 0 #ffffff14;display:grid;height:58px;place-items:center;position:fixed;right:max(24px,env(safe-area-inset-right));transition:transform .24s var(--ease),background .24s var(--ease),border-color .24s var(--ease);width:58px}.home__fab:hover{background:#222530d9;border-color:#ffffff2e;transform:translateY(-2px)}.home__fab:active{transform:scale(.94)}@keyframes home-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.desktop{animation:desktop-fade .36s var(--ease) both;display:grid;inset:0;overflow:hidden;padding:max(28px,env(safe-area-inset-top)) 20px max(28px,env(safe-area-inset-bottom));place-items:center;position:fixed}.desktop:before{background-image:radial-gradient(#ffffff0a 1px,#0000 0);background-size:3px 3px;content:"";inset:0;opacity:.45}.desktop:before,.desktop__glow{pointer-events:none;position:absolute}.desktop__glow{background:radial-gradient(circle,#7aa2ff1a,#0000 62%);border-radius:50%;height:min(90vw,620px);left:50%;top:50%;transform:translate(-50%,-50%);width:min(90vw,620px)}.desktop__grid{grid-gap:clamp(26px,6vw,42px) clamp(12px,4vw,30px);display:grid;gap:clamp(26px,6vw,42px) clamp(12px,4vw,30px);grid-template-columns:repeat(4,minmax(0,1fr));position:relative;width:min(100%,560px)}.desktop__app{align-items:center;animation:desktop-icon-in .46s var(--ease) both;animation-delay:calc(80ms + var(--i)*35ms);display:flex;flex-direction:column;gap:10px}.desktop__tile{aspect-ratio:1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(160deg,color-mix(in srgb,var(--tint) 26%,#0000),#0000 70%),hsla(0,0%,100%,.055);border:1px solid #ffffff1a;border-radius:26%;box-shadow:0 10px 24px #00000059,inset 0 1px 0 #ffffff1f;color:color-mix(in srgb,var(--tint) 78%,#fff);display:grid;place-items:center;transition:transform .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease);width:clamp(58px,16vw,72px)}.desktop__app:hover .desktop__tile{border-color:#fff3;transform:translateY(-3px) scale(1.04)}.desktop__app:active .desktop__tile{transform:scale(.95)}.desktop__label{color:#f2f4f8d1;font-size:.8rem;letter-spacing:.02em;text-shadow:0 1px 8px #00000080}.desktop__wallpaper-btn{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:50%;bottom:max(20px,env(safe-area-inset-bottom));box-shadow:0 8px 22px #00000059;color:#f2f4f8d9;display:grid;height:42px;place-items:center;position:absolute;right:max(20px,env(safe-area-inset-right));transition:transform .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease);width:42px}.desktop__wallpaper-btn:hover{background:#ffffff1a;border-color:#ffffff3d;transform:translateY(-2px)}.desktop__wallpaper-btn:active{transform:scale(.94)}.desktop__wallpaper-panel{animation:desktop-panel-in .26s var(--ease) both;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0e1018e0;border:1px solid #ffffff1a;border-radius:var(--radius-md);bottom:calc(max(20px, env(safe-area-inset-bottom)) + 54px);box-shadow:0 18px 44px #00000080;min-width:232px;padding:14px 16px 16px;position:absolute;right:max(20px,env(safe-area-inset-right))}.desktop__wallpaper-title{color:var(--muted);font-size:.78rem;letter-spacing:.08em;margin-bottom:10px}.desktop__swatches{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr)}.desktop__swatch{aspect-ratio:1;border:1px solid #ffffff24;border-radius:10px;overflow:hidden;position:relative;transition:transform .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease);width:44px}.desktop__swatch:hover{border-color:#ffffff4d;transform:translateY(-2px)}.desktop__swatch.is-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.desktop__swatch--upload{border-style:dashed;color:var(--muted);cursor:pointer;display:grid;place-items:center}.desktop__swatch--upload:hover{color:var(--text)}.desktop__wallpaper-error{color:#f0a3a3;font-size:.78rem;margin-top:10px}@keyframes desktop-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes desktop-fade{0%{opacity:0}to{opacity:1}}@keyframes desktop-icon-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (min-width:720px){.desktop__label{font-size:.85rem}}.app-page{display:flex;flex-direction:column;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) 22px max(28px,env(safe-area-inset-bottom))}.app-page__bar{align-items:center;display:flex;gap:14px;min-height:40px}.app-page__back{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--muted);display:inline-flex;font-size:.85rem;gap:6px;padding:8px 14px 8px 10px;transition:color .2s var(--ease),background .2s var(--ease)}.app-page__back:hover{background:var(--surface-strong);color:var(--text)}.app-page__name{color:var(--muted);font-size:.85rem;letter-spacing:.02em}.app-page__empty{align-items:center;animation:app-page-in .42s var(--ease) both;display:flex;flex:1 1;flex-direction:column;gap:14px;justify-content:center;text-align:center}.app-page__icon{background:linear-gradient(160deg,color-mix(in srgb,#7aa2ff 26%,#0000),#0000 70%);background:linear-gradient(160deg,color-mix(in srgb,var(--tint,#7aa2ff) 26%,#0000),#0000 70%);border:1px solid #ffffff1a;border-radius:26%;color:color-mix(in srgb,#7aa2ff 80%,#fff);color:color-mix(in srgb,var(--tint,#7aa2ff) 80%,#fff);display:grid;height:64px;place-items:center;width:64px}.app-page__title{font-size:1.6rem;font-weight:600;letter-spacing:-.02em}.app-page__desc{color:var(--muted);font-size:.95rem;line-height:1.6;max-width:34ch}.app-page__badge{border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.75rem;letter-spacing:.06em;margin-top:6px;padding:5px 12px}@keyframes app-page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.esp-page{--esp-accent:#ffcf6b;display:flex;flex-direction:column;gap:22px;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) 22px max(36px,env(safe-area-inset-bottom))}.esp-page__bar{align-items:center;display:flex;gap:14px;min-height:40px}.esp-page__back{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--muted);display:inline-flex;font-size:.85rem;gap:6px;padding:8px 14px 8px 10px;transition:color .2s var(--ease),background .2s var(--ease)}.esp-page__back:hover{background:var(--surface-strong);color:var(--text)}.esp-page__name{color:var(--muted);font-size:.85rem;letter-spacing:.02em}.esp-page__intro{align-items:center;animation:esp-page-in .42s var(--ease) both;display:flex;gap:14px}.esp-page__icon{background:linear-gradient(160deg,#ffcf6b33,#0000 70%);border:1px solid #ffcf6b38;border-radius:26%;color:var(--esp-accent);display:grid;flex:0 0 auto;height:52px;place-items:center;width:52px}.esp-page__title{font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.esp-page__desc{color:var(--muted);font-size:.86rem;margin-top:5px}.esp-page__refresh{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--muted);display:inline-flex;font-size:.82rem;gap:7px;margin-left:auto;padding:9px 15px;transition:color .2s var(--ease),background .2s var(--ease)}.esp-page__refresh:hover:not(:disabled){background:var(--surface-strong);color:var(--text)}.esp-page__refresh:disabled{cursor:default;opacity:.6}.is-spinning{animation:esp-spin .9s linear infinite}.esp-card{animation:esp-page-in .48s var(--ease) both;background:linear-gradient(180deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.012));border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;min-height:300px;padding:18px 16px 10px;position:relative}.esp-card__state{grid-gap:14px;color:var(--muted);display:grid;font-size:.9rem;gap:14px;justify-items:center;padding:48px 20px;place-content:center;text-align:center}.esp-card__retry{background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--text);font-size:.82rem;padding:8px 16px}.esp-card__retry:hover{background:var(--surface-strong)}.esp-chart{position:relative;width:100%}.esp-chart svg{display:block;height:auto;overflow:visible;touch-action:pan-y;width:100%}.esp-chart__grid{stroke:#ffffff12;stroke-dasharray:2 6}.esp-chart__tick{fill:var(--muted);font-feature-settings:"tnum";font-size:11px;font-variant-numeric:tabular-nums}.esp-chart__area{fill:url(#esp-area)}.esp-chart__line{fill:none;stroke:var(--esp-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2}.esp-chart__dot{fill:var(--bg);stroke:var(--esp-accent);stroke-width:1.8;transition:r .16s var(--ease)}.esp-chart__dot.is-active{fill:var(--esp-accent)}.esp-chart__marker line{stroke:#ffcf6b59;stroke-dasharray:3 4}.esp-chart__marker circle{fill:var(--esp-accent);stroke:var(--bg);stroke-width:2}.esp-chart__marker text,.esp-chart__readout{fill:var(--text);font-feature-settings:"tnum";font-size:12px;font-variant-numeric:tabular-nums;font-weight:600}.esp-chart__readout{align-items:baseline;background:#0e1018db;border:1px solid var(--line);border-radius:999px;color:var(--esp-accent);display:flex;gap:8px;padding:5px 10px;pointer-events:none;position:absolute;right:6px;top:4px}.esp-chart__readout span{color:var(--muted);font-size:.72rem;font-weight:400}.esp-stats{grid-gap:10px;animation:esp-page-in .52s var(--ease) both;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.esp-stats div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px 16px}.esp-stats dt{color:var(--muted);font-size:.72rem;letter-spacing:.06em}.esp-stats dd{font-feature-settings:"tnum";font-size:1.25rem;font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin:6px 0 0}.esp-page__meta{font-feature-settings:"tnum";color:var(--muted);font-size:.76rem;font-variant-numeric:tabular-nums;line-height:1.6}@keyframes esp-page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes esp-spin{to{transform:rotate(1turn)}}@media (max-width:560px){.esp-page{padding-left:16px;padding-right:16px}.esp-page__intro{flex-wrap:wrap}.esp-page__desc{font-size:.82rem}.esp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.esp-card{padding:12px 8px 6px}.esp-chart__readout{right:0;top:-6px}}
/*# sourceMappingURL=main.655d4ebb.css.map*/