@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root,:root[data-theme=dark]{--bg:#000;--bg-2:#040407;--bg-grad:radial-gradient(120% 90% at 50% 0%, #0b0b14 0%, #05050a 55%, #000 100%);--surface:#ffffff0d;--surface-hover:#ffffff16;--surface-active:#ffffff21;--border:#ffffff1a;--border-hover:#ffffff38;--border-strong:#ffffff29;--highlight:#ffffff12;--inset:inset 0 1px 0 #ffffff24;--text-1:#fff;--text-2:#ffffffa8;--text-3:#fff6;--accent:#0a84ff;--accent-soft:#0a84ff29;--accent-glow:#0a84ff57;--on-accent:#fff;--green:#30d158;--green-soft:#30d15829;--green-glow:#30d15857;--orange:#ff9f0a;--orange-soft:#ff9f0a29;--orange-glow:#ff9f0a57;--red:#ff453a;--red-soft:#ff453a29;--red-glow:#ff453a57;--purple:#bf5af2;--purple-soft:#bf5af229;--purple-glow:#bf5af257;--teal:#64d2ff;--teal-soft:#64d2ff29;--teal-glow:#64d2ff57;--pink:#ff375f;--pink-soft:#ff375f29;--pink-glow:#ff375f57;--yellow:#ffd60a;--yellow-soft:#ffd60a29;--yellow-glow:#ffd60a57;--shadow-color:#0009;--shadow-color-deep:#000000bf;--shadow-color-hard:#000000e6;--dock-bg:#0a0a1280;--glass-solid:#181822d9}:root[data-theme=light]{--bg:#f5f5f7;--bg-2:#ededf0;--bg-grad:radial-gradient(120% 90% at 50% 0%, #fff 0%, #f7f7fa 55%, #efeff2 100%);--surface:#ffffffa8;--surface-hover:#ffffffeb;--surface-active:#0000000f;--border:#00000014;--border-hover:#0000002e;--border-strong:#00000024;--highlight:#ffffffd9;--inset:inset 0 1px 0 #ffffffe6;--text-1:#1d1d1f;--text-2:#1d1d1f9e;--text-3:#1d1d1f66;--accent:#007aff;--accent-soft:#007aff1f;--accent-glow:#007aff42;--on-accent:#fff;--green:#34c759;--green-soft:#34c75924;--green-glow:#34c75947;--orange:#ff9500;--orange-soft:#ff950024;--orange-glow:#ff950047;--red:#ff3b30;--red-soft:#ff3b3024;--red-glow:#ff3b3047;--purple:#af52de;--purple-soft:#af52de24;--purple-glow:#af52de47;--teal:#00c7be;--teal-soft:#00c7be24;--teal-glow:#00c7be47;--pink:#ff2d55;--pink-soft:#ff2d5524;--pink-glow:#ff2d5547;--yellow:#fc0;--yellow-soft:#ffcc0029;--yellow-glow:#ffcc004d;--shadow-color:#00000024;--shadow-color-deep:#00000047;--shadow-color-hard:#00000073;--dock-bg:#ffffffb8;--glass-solid:#ffffffdb}:root{--r-sm:12px;--r-md:16px;--r-lg:18px;--r-xl:22px;--r-2xl:28px;--r-3xl:36px;--r-full:9999px;--ease:cubic-bezier(.25, .1, .25, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.1s;--dur-base:.18s;--dur-slow:.34s;--glass-shadow:0 16px 48px -18px var(--shadow-color), var(--inset);--glass-shadow-sm:0 10px 30px -16px var(--shadow-color), var(--inset);--glass-press:inset 0 3px 12px #0006}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{color:var(--text-1);background:var(--bg);background-image:var(--bg-grad);min-height:100dvh;transition:background .4s var(--ease), color .4s var(--ease);background-attachment:fixed;font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:14px;line-height:1.5;overflow-x:hidden}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input{color:inherit;font-family:inherit}@media (hover:hover) and (pointer:fine){:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:10px}}::selection{background:var(--accent);color:var(--on-accent)}*{scrollbar-width:none;scrollbar-color:transparent transparent;-ms-overflow-style:none}::-webkit-scrollbar{background:0 0;width:0;height:0;display:none}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.glass{background:var(--surface);-webkit-backdrop-filter:blur(50px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--glass-shadow), var(--inset);position:relative}.glass:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff17,#0000 42%);position:absolute;inset:0}.glass-card{background:var(--surface);-webkit-backdrop-filter:blur(40px)saturate(170%);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--glass-shadow-sm), var(--inset);transition:transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) var(--ease), border-color var(--dur-base);padding:20px;position:relative}.glass-card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff1a,#0000 45%);position:absolute;inset:0}.glass-card:hover{border-color:var(--border-hover);box-shadow:0 20px 50px -16px var(--shadow-color), var(--inset);transform:translateY(-3px)}.card-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:14px;font-size:11px;font-weight:700}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.93)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(46px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dock-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes success-pop{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}@keyframes breathe-soft{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes wave-drift{0%,to{transform:translate(0)translateY(0)}50%{transform:translate(4%)translateY(-2%)}}@keyframes logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes splash-ring{0%{opacity:.9;transform:scale(.55)}to{opacity:0;transform:scale(2.6)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes breathe-glow{0%,to{opacity:.5;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}@keyframes bar-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes count-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.12)}to{transform:scale(1)}}@keyframes sheen-sweep{0%{transform:translate(-120%)skew(-18deg)}to{transform:translate(240%)skew(-18deg)}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.home{flex-direction:column;gap:18px;width:100%;max-width:560px;margin:0 auto;padding:18px;display:flex;position:relative}@media (width>=480px){.home{max-width:720px}}.home-cols{grid-template-columns:1fr;gap:18px;display:grid}@media (width>=900px){.home{max-width:1200px;padding:18px 0}.home-cols{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.week-card{grid-column:1/-1}}.home-top{padding:6px 4px 2px}.home-greet{color:var(--text-3);letter-spacing:.02em;font-size:13px;font-weight:600}.home-title{letter-spacing:-.03em;background:linear-gradient(135deg, var(--text-1), var(--text-2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-top:2px;font-size:27px;font-weight:800}.streak-hero{border-radius:var(--r-2xl);background:linear-gradient(150deg, var(--accent-soft), var(--surface) 40%, var(--surface));border:1px solid var(--border);-webkit-backdrop-filter:blur(50px)saturate(180%);box-shadow:var(--glass-shadow), var(--inset);animation:fadeInScale .6s var(--ease-out) 50ms both;position:relative;overflow:hidden}.streak-hero:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff1f,#0000 45%);position:absolute;inset:0}.streak-hero-content{z-index:2;align-items:center;gap:18px;padding:22px;display:flex;position:relative}.streak-hero-blob{background:radial-gradient(circle, var(--accent-glow), transparent 65%);filter:blur(40px);opacity:.5;border-radius:50%;width:220px;height:220px;animation:5s ease-in-out infinite breathe-glow;position:absolute;top:-70px;right:-60px}.streak-hero-sheen{pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff17,#0000);width:40%;animation:4.5s ease-in-out infinite sheen-sweep;position:absolute;top:0;bottom:0}.streak-hero-ring{flex-shrink:0;width:120px;height:120px;animation:4s ease-in-out infinite logo-float;position:relative}.streak-hero-ring svg{width:100%;height:100%}.streak-hero-num{letter-spacing:-.04em;color:var(--text-1);flex-direction:column;justify-content:center;align-items:center;font-size:40px;font-weight:900;line-height:1;display:flex;position:absolute;inset:0}.streak-hero-days{text-transform:uppercase;letter-spacing:.16em;color:var(--text-3);justify-content:center;align-items:center;margin-top:46px;font-size:11px;font-weight:600;display:flex;position:absolute;inset:0}.streak-hero-right{flex-direction:column;gap:8px;display:flex}.streak-hero-label{letter-spacing:-.02em;font-size:20px;font-weight:800}.streak-hero-sub{color:var(--text-2);font-size:13px;line-height:1.4}.streak-hero-chips{flex-wrap:wrap;gap:6px;margin-top:3px;display:flex}.chip{border-radius:var(--r-full);border:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:fadeInUp .5s var(--ease-out) both;align-items:center;gap:4px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.chip-green{color:var(--green);background:var(--green-soft);border-color:color-mix(in srgb, var(--green) 30%, transparent)}.chip-accent{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.chip-teal{color:var(--teal);background:var(--teal-soft);border-color:color-mix(in srgb, var(--teal) 30%, transparent)}.stat-row{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.stat-tile{border-radius:var(--r-lg);background:var(--surface);-webkit-backdrop-filter:blur(30px)saturate(170%);border:1px solid var(--border);box-shadow:var(--inset);opacity:0;animation:fadeInUp .5s var(--ease-out) both;transition:transform var(--dur-base) var(--ease-spring), border-color var(--dur-base);flex-direction:column;gap:2px;padding:13px 12px;display:flex;position:relative;overflow:hidden}.stat-tile:before{content:"";background:var(--tile-c,var(--accent));opacity:.85;border-radius:0 0 6px 6px;height:2px;position:absolute;top:0;left:0;right:0}.stat-tile:hover{border-color:var(--border-hover);transform:translateY(-2px)}.stat-gold,.stat-green,.stat-accent,.stat-teal,.stat-purple{--tile-c:var(--green)}.stat-accent{--tile-c:var(--accent)}.stat-teal{--tile-c:var(--teal)}.stat-purple{--tile-c:var(--purple)}.stat-tile-value{letter-spacing:-.02em;color:var(--text-1);font-size:22px;font-weight:900}.stat-tile-label{color:var(--text-3);letter-spacing:.02em;font-size:10.5px;font-weight:600;line-height:1.25}.quick-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.quick-card{border-radius:var(--r-lg);background:var(--surface);-webkit-backdrop-filter:blur(30px)saturate(170%);border:1px solid var(--border);box-shadow:var(--inset);text-align:left;opacity:0;animation:fadeInUp .5s var(--ease-out) both;transition:transform var(--dur-base) var(--ease-spring), border-color var(--dur-base);flex-direction:column;align-items:flex-start;gap:9px;padding:14px;display:flex;position:relative;overflow:hidden}.quick-card:hover{border-color:var(--border-hover);transform:translateY(-3px)}.quick-card:active{transform:scale(.94)}.quick-icon{width:36px;height:36px;color:var(--tint);background:color-mix(in srgb, var(--tint) 18%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--tint) 30%, transparent);border-radius:11px;justify-content:center;align-items:center;display:flex}.quick-label{font-size:12px;font-weight:700}.quick-arrow{color:var(--text-3);opacity:0;transition:opacity var(--dur-base), transform var(--dur-base);position:absolute;top:14px;right:14px;transform:translate(-4px)}.quick-card:hover .quick-arrow{opacity:1;transform:translate(0)}.has-card{border-radius:var(--r-2xl);background:var(--surface);-webkit-backdrop-filter:blur(50px)saturate(180%);border:1px solid var(--border);box-shadow:var(--glass-shadow), var(--inset);animation:fadeInScale .6s var(--ease-out) both;padding:18px;position:relative;overflow:hidden}.has-card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff14,#0000 45%);position:absolute;inset:0}.has-card-head{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.has-card-head .card-label{margin-bottom:0}.has-card-badge{border-radius:var(--r-full);min-width:20px;height:20px;color:var(--on-accent);background:linear-gradient(135deg, var(--accent), var(--green));justify-content:center;align-items:center;padding:0 7px;font-size:11px;font-weight:800;display:inline-flex}.has-card-count{color:var(--text-3);font-size:12px;font-weight:600}.week-bars{grid-template-columns:repeat(7,1fr);align-items:end;gap:8px;margin-top:14px;display:grid}.week-col{opacity:0;animation:fadeInUp .5s var(--ease-out) both;flex-direction:column;align-items:center;gap:6px;display:flex}.week-bar-count{color:var(--text-3);height:15px;font-size:11px;font-weight:700}.week-bar-count-on{color:var(--accent)}.week-bar-track{border-radius:var(--r-full);background:var(--surface-active);justify-content:center;align-items:flex-end;width:100%;max-width:30px;height:74px;display:flex;overflow:hidden}.week-bar-fill{width:100%;height:var(--h,0%);border-radius:var(--r-full);background:linear-gradient(180deg, var(--accent), var(--green));transform-origin:bottom;animation:bar-grow .7s var(--ease-out) .3s both;transition:background .3s}.week-bar-day{color:var(--text-3);font-size:11px;font-weight:600}.week-bar-day-on{color:var(--accent);font-weight:800}.today-list{flex-direction:column;margin-top:10px;display:flex}.today-item{border-radius:var(--r-md);opacity:0;animation:fadeInUp .45s var(--ease-out) both;transition:background var(--dur-base);align-items:center;gap:12px;padding:10px 9px;display:flex}.today-item:hover{background:var(--surface-hover)}.today-item-order{width:28px;height:28px;color:var(--green);background:var(--green-soft);border:1px solid color-mix(in srgb, var(--green) 28%, transparent);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex}.today-item-body{flex-direction:column;flex:1;min-width:0;display:flex}.today-item-name{font-size:14px;font-weight:700}.today-item-cat{color:var(--text-3);font-size:11.5px}.today-item-val{color:var(--text-1);white-space:nowrap;font-size:14px;font-weight:800}.today-item-unit{color:var(--text-3);font-size:11px;font-weight:600}.today-empty{border-radius:var(--r-lg);background:var(--surface-active);border:1px dashed var(--border-hover);text-align:center;width:100%;transition:background var(--dur-base), transform var(--dur-base) var(--ease-spring);flex-direction:column;align-items:center;gap:4px;margin-top:10px;padding:26px 16px;display:flex}.today-empty:hover{background:var(--surface-hover);transform:translateY(-2px)}.today-empty-icon{width:52px;height:52px;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:16px;justify-content:center;align-items:center;margin-bottom:6px;display:flex}.today-empty-icon-green{color:var(--green);background:var(--green-soft);border-color:color-mix(in srgb, var(--green) 30%, transparent)}.today-empty-title{font-size:14px;font-weight:700}.today-empty-sub{color:var(--text-3);font-size:12px}.history-groups{flex-direction:column;margin-top:8px;display:flex}.history-group{flex-direction:column;display:flex}.history-group-head{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:7px;padding:12px 8px 8px;display:flex}.history-group:first-child .history-group-head{border-top:none;margin-top:0;padding-top:8px}.history-date{text-transform:uppercase;letter-spacing:.06em;color:var(--text-2);font-size:12px;font-weight:800}.history-date-count{color:var(--text-3);background:var(--surface-active);border-radius:var(--r-full);padding:2px 8px;font-size:11px;font-weight:700}.history-item{border-radius:var(--r-md);opacity:0;animation:fadeInUp .4s var(--ease-out) both;transition:background var(--dur-base);align-items:center;gap:12px;padding:10px 9px;display:flex}.history-item:hover{background:var(--surface-hover)}.history-item-body{flex-direction:column;flex:1;min-width:0;display:flex}.history-item-name{font-size:14px;font-weight:600}.history-item-cat{color:var(--text-3);font-size:11px}.history-item-val{white-space:nowrap;font-size:13px;font-weight:700}.history-item-unit{color:var(--text-3);font-size:10.5px;font-weight:600}@media (width<=480px){.home{gap:14px;padding:14px}.stat-row{grid-template-columns:repeat(4,1fr);gap:8px}.stat-tile-value{font-size:19px}.streak-hero-content{gap:12px;padding:18px}.streak-hero-ring{width:104px;height:104px}.streak-hero-num{font-size:34px}.quick-row{gap:8px}.today-item,.history-item{gap:8px;padding:9px 6px}.today-item-body,.history-item-body{min-width:0}.today-item-name,.history-item-name,.today-item-cat,.history-item-cat{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item-actions{gap:2px}.item-act{width:26px;height:26px}.today-item-val{font-size:13px}.history-item-val{font-size:12px}}.feat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.feat-card{flex-direction:column;gap:10px;display:flex}.feat-card-head{justify-content:space-between;align-items:center;display:flex}.feat-card-head .card-label{margin-bottom:0}.feat-goal-count{color:var(--green);font-size:13px;font-weight:800}.feat-water-ml{color:var(--teal);font-size:13px;font-weight:800}.feat-weight-val{color:var(--accent);font-size:13px;font-weight:800}.feat-pr-count{color:var(--yellow);font-size:13px;font-weight:800}.goal-ring{width:84px;height:84px;margin:0 auto;position:relative}.goal-ring svg{width:100%;height:100%}.goal-ring-center{color:var(--text-1);justify-content:center;align-items:center;font-size:20px;font-weight:800;display:flex;position:absolute;inset:0}.feat-goal-sub{text-align:center;color:var(--text-3);font-size:12px}.water-cups{justify-content:center;gap:5px;display:flex}.water-cup{border:1.5px solid var(--border);width:22px;height:30px;transition:all var(--dur-base) var(--ease);border-radius:5px 5px 7px 7px;position:relative}.water-cup-full{background:linear-gradient(180deg, var(--teal), var(--accent));border-color:var(--teal);box-shadow:0 0 12px var(--teal-glow);animation:count-pop .3s var(--ease-spring)}.feat-bodyweight-icon{width:46px;height:46px;color:var(--accent);background:var(--accent-soft);border-radius:14px;justify-content:center;align-items:center;margin:0 auto;display:flex}.feat-btn{border-radius:var(--r-md);background:var(--surface-active);border:1px solid var(--border);width:100%;color:var(--text-2);transition:all var(--dur-base);padding:9px;font-size:12px;font-weight:700}.feat-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.feat-btn:active{transform:scale(.96)}.pr-list{flex-direction:column;gap:6px;display:flex}.pr-row{justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.pr-name{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.pr-val{color:var(--yellow);white-space:nowrap;font-weight:800}.feat-empty{color:var(--text-3);font-size:12px}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:10px;display:grid}.ach-name{font-size:10.5px;font-weight:700;line-height:1.2}@media (width>=900px){.feat-grid{grid-template-columns:repeat(4,1fr);gap:14px}}.quote-card{animation:fadeInUp .4s var(--ease-out) both;flex-direction:column;gap:6px;padding:16px 18px;display:flex;position:relative;overflow:hidden}.quote-card:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--accent) 18%, transparent), transparent 70%);pointer-events:none;border-radius:50%;width:130px;height:130px;position:absolute;top:-40px;right:-40px}.quote-mark{color:var(--accent);z-index:1;position:relative}.quote-text{color:var(--text-1);z-index:1;font-size:14.5px;font-weight:600;line-height:1.5;position:relative}.quote-day{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);z-index:1;font-size:10.5px;font-weight:800;position:relative}.feat-spark-wrap{flex-direction:column;flex:1;gap:6px;display:flex}.feat-spark{width:100%;height:54px;overflow:visible}.feat-spark-count{color:var(--text-3);font-size:10px;font-weight:700}.heat-grid{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.heat-cell{aspect-ratio:1;background:var(--surface-hover);border:1px solid var(--border);transition:all var(--dur-base);border-radius:5px}.heat-1{background:color-mix(in srgb, var(--green) 22%, var(--surface));border-color:color-mix(in srgb, var(--green) 18%, transparent)}.heat-2{background:color-mix(in srgb, var(--green) 42%, var(--surface));border-color:color-mix(in srgb, var(--green) 30%, transparent)}.heat-3{background:color-mix(in srgb, var(--green) 62%, var(--surface));border-color:color-mix(in srgb, var(--green) 45%, transparent)}.heat-4{background:var(--green);border-color:var(--green);box-shadow:0 0 8px color-mix(in srgb, var(--green) 45%, transparent)}.item-actions{flex-shrink:0;gap:4px;display:flex}.item-act{cursor:pointer;background:var(--surface-hover);width:28px;height:28px;color:var(--text-2);transition:all var(--dur-base);border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.item-act:hover{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.item-act-danger:hover{color:#ff453a;background:color-mix(in srgb, #ff453a 14%, var(--surface))}.home-modal-overlay{z-index:300;-webkit-backdrop-filter:blur(6px);animation:fadeIn .25s var(--ease-out);background:#0000008c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.home-modal{background:var(--surface-2);border:1px solid var(--border);width:100%;max-width:360px;box-shadow:0 24px 60px #00000073, var(--shadow-ring);animation:fadeInUp .3s var(--ease-out);border-radius:20px;padding:20px}.home-modal-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.home-modal-title{color:var(--text-1);font-size:17px;font-weight:800}.home-modal-close{cursor:pointer;background:var(--surface-hover);width:28px;height:28px;color:var(--text-2);border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.home-modal-close:hover{color:var(--text-1)}.home-modal-ex{color:var(--text-2);margin-bottom:16px;font-size:15px;font-weight:600}.home-modal-field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.home-modal-label{color:var(--text-2);font-size:12px;font-weight:600}.home-modal-input{width:100%;color:var(--text-1);background:var(--surface);border:1px solid var(--border);transition:border-color var(--dur-base);appearance:textfield;border-radius:10px;outline:none;padding:10px 12px;font-size:15px;font-weight:700}.home-modal-input:focus{border-color:var(--accent)}.home-modal-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.home-modal-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.home-modal-sub{color:var(--text-2);margin-bottom:16px;font-size:14px;line-height:1.5}.home-modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.home-modal-btn{cursor:pointer;transition:all var(--dur-base);border:none;border-radius:12px;padding:9px 16px;font-size:14px;font-weight:700}.home-modal-cancel{background:var(--surface-hover);color:var(--text-2)}.home-modal-cancel:hover{color:var(--text-1)}.home-modal-save{background:var(--accent);color:#fff}.home-modal-save:disabled{opacity:.5;cursor:default}.home-modal-save:hover:not(:disabled){filter:brightness(1.08)}.home-modal-danger{background:#ff453a}.home-modal-danger:hover:not(:disabled){filter:brightness(1.08)}.focus{opacity:0;transition:opacity .35s var(--ease-out)}.focus-show{opacity:1}.focus-grid{grid-template-columns:1fr;gap:12px;display:grid}@media (width>=900px){.focus-grid{grid-template-columns:minmax(360px,1fr) 1fr;align-items:start}}.focus-timer{background:var(--surface);-webkit-backdrop-filter:blur(40px)saturate(180%);backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--inset), 0 8px 32px var(--shadow-color);animation:fadeInUp .5s var(--ease-out) both;flex-direction:column;align-items:center;margin-bottom:12px;padding:24px;display:flex}.focus-modes{background:var(--surface-hover);border:1px solid var(--border);border-radius:9999px;flex-wrap:wrap;justify-content:center;gap:4px;margin-bottom:18px;padding:4px;display:flex}.focus-mode{color:var(--text-2);transition:all var(--dur-base) var(--ease);border-radius:9999px;padding:6px 16px;font-size:12px;font-weight:600}.focus-mode:hover{color:var(--text-1)}.focus-mode-active{background:var(--tint);box-shadow:0 2px 10px color-mix(in srgb, var(--tint) 40%, transparent);color:var(--on-accent)!important}.focus-custom{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--r-lg);animation:fadeIn .25s var(--ease-out) both;align-items:center;gap:6px;margin-bottom:18px;padding:8px 10px;display:flex}.focus-custom-btn{border-radius:var(--r-md);background:var(--surface-active);min-width:34px;height:30px;color:var(--text-1);transition:all var(--dur-base);padding:0 8px;font-size:14px;font-weight:700}.focus-custom-btn:hover{background:var(--accent-soft);color:var(--accent)}.focus-custom-btn:active{transform:scale(.94)}.focus-custom-val{flex:1;justify-content:center;align-items:center;gap:6px;padding:0 4px;display:flex}.focus-custom-input{text-align:center;width:56px;color:var(--text-1);font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:none;outline:none;font-size:20px;font-weight:800}.focus-custom-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.focus-custom-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.focus-custom-unit{color:var(--text-3);font-size:11px;font-weight:700}.focus-controls{align-items:center;gap:10px;display:flex}.focus-reset{background:var(--surface-active);width:42px;height:42px;color:var(--text-2);transition:all var(--dur-base);border-radius:9999px;justify-content:center;align-items:center;display:flex}.focus-reset:hover{color:var(--red);background:var(--red-soft)}.focus-ring{width:220px;height:220px;margin-bottom:22px;position:relative}.focus-ring svg{width:100%;height:100%}.focus-time{justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;inset:0}.focus-time-num{letter-spacing:-.02em;color:var(--text-1);font-variant-numeric:tabular-nums;font-size:3.2rem;font-weight:800}.focus-time-sep{color:var(--text-3);font-size:3.2rem;font-weight:800}.focus-start{background:var(--tint,var(--accent));color:var(--on-accent);box-shadow:0 0 26px color-mix(in srgb, var(--tint,var(--accent)) 30%, transparent);transition:all var(--dur-base) var(--ease);border-radius:9999px;padding:12px 38px;font-size:14px;font-weight:700}.focus-start:hover{transform:scale(1.03)}.focus-start:active{transform:scale(.96)}.focus-start-running{background:var(--surface-active);color:var(--text-1);border:1px solid var(--border);box-shadow:none}.tasks-card{animation:fadeInUp .5s var(--ease-out) .1s both}.task-add{gap:8px;margin-bottom:14px;display:flex}.task-input{background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-1);transition:border-color var(--dur-base);flex:1;padding:11px 14px;font-size:13px}.task-input::placeholder{color:var(--text-3)}.task-input:focus{border-color:var(--accent);outline:none}.task-add-btn{border-radius:var(--r-md);background:var(--accent);width:42px;height:42px;color:var(--on-accent);transition:all var(--dur-base) var(--ease);justify-content:center;align-items:center;display:flex}.task-add-btn:hover{box-shadow:0 0 20px var(--accent-glow)}.task-add-btn:active{transform:scale(.92)}.task-empty{color:var(--text-3);padding:8px 4px;font-size:12px}.task-list{flex-direction:column;gap:2px;display:flex}.task-item{border-radius:var(--r-md);transition:background var(--dur-fast);align-items:center;gap:12px;padding:10px 8px;display:flex}.task-item:hover{background:var(--surface-hover)}.task-check{border:1.5px solid var(--border-hover);width:22px;height:22px;color:var(--on-accent);transition:all var(--dur-base) var(--ease);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-check:hover{border-color:var(--green)}.task-done .task-check{background:var(--green);border-color:var(--green);box-shadow:0 0 10px var(--green-glow)}.task-title{color:var(--text-1);transition:color var(--dur-fast);flex:1;font-size:13px}.task-done .task-title{color:var(--text-3);text-decoration:line-through}.task-remove{color:var(--text-3);opacity:0;transition:all var(--dur-fast);border-radius:50%;padding:6px}.task-item:hover .task-remove{opacity:1}.task-remove:hover{color:var(--red);background:var(--red-soft)}@media (width<=480px){.focus-time-num,.focus-time-sep{font-size:2.6rem}.focus-ring{width:200px;height:200px}}.train{opacity:0;transition:opacity .35s var(--ease-out)}.train-show{opacity:1}.page-head{margin-bottom:24px}.page-title{letter-spacing:-.04em;color:var(--text-1);font-size:2rem;font-weight:800}.page-sub{color:var(--text-2);margin-top:2px;font-size:13px}.cat-pills{scrollbar-width:none;gap:6px;margin-bottom:12px;padding-bottom:4px;display:flex;overflow-x:auto}.cat-pills::-webkit-scrollbar{display:none}.cat-scroll{flex-wrap:wrap}.cat-pill{color:var(--text-2);background:var(--surface);border:1px solid var(--border);white-space:nowrap;transition:all var(--dur-base) var(--ease);border-radius:9999px;align-items:center;gap:6px;padding:7px 15px;font-size:12px;font-weight:600;display:flex}.cat-pill:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text-1)}.cat-pill-active{background:color-mix(in srgb, var(--cat) 16%, transparent);border-color:color-mix(in srgb, var(--cat) 45%, transparent);color:var(--cat)!important}.train-toolbar{background:var(--surface);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--inset);animation:fadeInUp .4s var(--ease-out) both;flex-direction:column;gap:10px;margin-bottom:18px;padding:12px;display:flex}.train-search{background:var(--surface-active);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-3);align-items:center;gap:8px;padding:0 12px;display:flex}.train-search:focus-within{border-color:var(--accent);color:var(--accent)}.train-search-input{color:var(--text-1);background:0 0;border:none;flex:1;padding:11px 0;font-size:13px}.train-search-input:focus{outline:none}.train-search-input::placeholder{color:var(--text-3)}.equip-pills{flex-wrap:wrap;gap:6px;display:flex}.equip-pill{color:var(--text-2);background:var(--surface-active);border:1px solid var(--border);transition:all var(--dur-fast);border-radius:9999px;padding:6px 11px;font-size:11px;font-weight:600}.equip-pill:hover{color:var(--text-1);border-color:var(--border-hover)}.equip-pill-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.ex-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.ex-card{background:var(--surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--r-lg);transition:all var(--dur-base) var(--ease);animation:fadeInUp .4s var(--ease-out) both;box-shadow:var(--inset);flex-direction:column;align-items:flex-start;gap:7px;padding:14px;display:flex;position:relative;overflow:hidden}.ex-card:hover{background:var(--surface-hover);border-color:color-mix(in srgb, var(--cat) 40%, var(--border));box-shadow:var(--inset), 0 10px 28px var(--shadow-color);transform:translateY(-3px)}.ex-card:active{transform:scale(.96)}.ex-card-top{justify-content:space-between;align-items:center;width:100%;display:flex}.ex-card-icon{background:color-mix(in srgb, var(--cat) 13%, transparent);width:40px;height:40px;color:var(--cat);border-radius:var(--r-md);transition:all var(--dur-base) var(--ease);justify-content:center;align-items:center;display:flex}.ex-card:hover .ex-card-icon{background:var(--cat);color:var(--on-accent);box-shadow:0 0 22px color-mix(in srgb, var(--cat) 35%, transparent)}.fav-btn{width:26px;height:26px;color:var(--text-3);transition:all var(--dur-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.fav-btn:hover{color:var(--yellow);background:var(--surface-hover)}.fav-on,.fav-on:hover{color:var(--yellow)}.ex-card-name{color:var(--text-1);text-align:left;font-size:12.5px;font-weight:700;line-height:1.3}.ex-card-meta{color:var(--text-3);align-items:center;gap:5px;font-size:10px;font-weight:600;display:flex}.ex-card-dot{border-radius:50%;width:5px;height:5px}.ex-card-equip{color:var(--text-3);background:var(--surface-active);border-radius:9999px;padding:2px 7px;font-size:9.5px;font-weight:600}.ex-empty{text-align:center;color:var(--text-3);grid-column:1/-1;padding:40px;font-size:13px}.ex-form{background:var(--surface);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border:1px solid var(--border);border-radius:var(--r-xl);max-width:420px;box-shadow:var(--inset), 0 8px 32px var(--shadow-color);animation:fadeInScale .3s var(--ease-out);margin:0 auto;padding:28px}.ex-form-head{align-items:center;gap:12px;margin-bottom:28px;display:flex}.ex-form-icon{background:color-mix(in srgb, var(--cat) 13%, transparent);width:40px;height:40px;color:var(--cat);border-radius:var(--r-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ex-form-titles{flex:1}.ex-form-title{font-size:18px;font-weight:700}.ex-form-cat{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.ex-form-close{background:var(--surface-hover);width:28px;height:28px;color:var(--text-2);transition:all var(--dur-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.ex-form-close:hover{background:var(--surface-active);color:var(--text-1)}.ex-stepper-row{justify-content:center;align-items:center;gap:20px;margin-bottom:24px;display:flex}.ex-field{margin-bottom:4px}.ex-field-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);margin-bottom:0;font-size:10px;font-weight:700;display:block}.ex-static{text-align:center;color:var(--text-1);background:0 0;font-size:2.6rem;font-weight:800}.ex-stepper{background:var(--surface-hover);border:1px solid var(--border);width:46px;height:46px;color:var(--text-2);transition:all var(--dur-base) var(--ease);border-radius:50%;justify-content:center;align-items:center;display:flex}.ex-stepper:hover{background:var(--surface-active);color:var(--text-1)}.ex-stepper:active{transform:scale(.88)}.ex-value{flex-direction:column;align-items:center;gap:2px;min-width:110px;display:flex}.ex-input{text-align:center;width:110px;color:var(--text-1);letter-spacing:-.03em;-moz-appearance:textfield;background:0 0;border:none;font-size:2.6rem;font-weight:800}.ex-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ex-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ex-input:focus{outline:none}.ex-unit{color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;font-size:10px}.ex-submit{background:var(--accent);width:100%;color:var(--on-accent);border-radius:var(--r-lg);transition:all var(--dur-base) var(--ease);padding:14px;font-size:14px;font-weight:700}.ex-submit:hover{background:color-mix(in srgb, var(--accent) 85%, white);box-shadow:0 0 24px var(--accent-glow)}.ex-submit:active{transform:scale(.98)}.ex-submit:disabled{opacity:.35;cursor:not-allowed}.success-overlay{z-index:4500;background:color-mix(in srgb, var(--bg) 60%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .15s var(--ease);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.success-modal{background:var(--surface);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);border:1px solid var(--border);border-radius:var(--r-2xl);text-align:center;box-shadow:0 20px 70px var(--shadow-color);animation:success-pop .45s var(--ease-spring);padding:40px 56px}.success-check{background:var(--green);width:54px;height:54px;color:var(--on-accent);box-shadow:0 0 34px var(--green-glow);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 14px;display:flex}.success-text{color:var(--green);font-size:16px;font-weight:700}@media (width<=1100px){.ex-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media (width<=768px){.ex-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.page-title{font-size:1.5rem}}@media (width<=480px){.ex-grid{grid-template-columns:repeat(2,1fr)}}.grass{opacity:0;transition:opacity .35s var(--ease-out)}.grass-show{opacity:1}.grass-card{background:var(--surface);-webkit-backdrop-filter:blur(40px)saturate(180%);backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--inset), 0 8px 32px var(--shadow-color);animation:fadeInUp .5s var(--ease-out) both;flex-direction:column;align-items:center;padding:32px 28px;display:flex}.grass-sun{justify-content:center;align-items:center;width:240px;height:240px;display:flex;position:relative}.grass-halo{background:radial-gradient(circle, var(--green-glow) 0%, transparent 70%);border-radius:50%;width:190px;height:190px;animation:6s ease-in-out infinite breathe-soft;position:absolute}.grass-sun-rays{opacity:0;width:240px;height:240px;transition:opacity 1s var(--ease);animation:40s linear infinite spin;position:absolute}.grass-sun:hover .grass-sun-rays{opacity:1}.grass:has(.grass-breath-ring) .grass-sun-rays{opacity:1}.grass-ray{background:var(--green);transform-origin:50%;opacity:.4;border-radius:2px;width:2px;height:18px;margin:-9px;position:absolute;top:50%;left:50%}.grass-breath-ring{z-index:2;width:200px;height:200px;transition:transform 6s cubic-bezier(.45,0,.55,1);position:relative}.grass-breath-ring svg{width:100%;height:100%}.grass-count{color:var(--text-1);justify-content:center;align-items:center;font-size:2rem;font-weight:800;display:flex;position:absolute;inset:0}.grass-phase{text-align:center;margin:20px 0 16px}.grass-phase-label{letter-spacing:-.02em;color:var(--green);font-size:1.4rem;font-weight:800}.grass-phase-hint{color:var(--text-3);margin-top:4px;font-size:12px}.grass-progress{background:var(--surface-hover);border-radius:9999px;width:60%;height:3px;margin-bottom:24px;overflow:hidden}.grass-progress-fill{height:100%;width:var(--p,0%);background:linear-gradient(90deg, var(--green), var(--teal));border-radius:9999px;transition:width 1s linear}.grass-btn{background:var(--green);color:var(--on-accent);box-shadow:0 0 26px var(--green-glow);transition:all var(--dur-base) var(--ease);border-radius:9999px;padding:12px 40px;font-size:14px;font-weight:700}.grass-btn:hover{transform:scale(1.03)}.grass-btn:active{transform:scale(.96)}@media (width<=480px){.grass-sun{width:200px;height:200px}.grass-breath-ring{width:170px;height:170px}.grass-sun-rays{width:200px;height:200px}}.sw{opacity:0;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);transform:translateY(14px)}.sw-show{opacity:1;transform:none}.sw-card{background:var(--surface);-webkit-backdrop-filter:blur(40px)saturate(180%);backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-2xl);max-width:420px;box-shadow:var(--inset), 0 8px 32px var(--shadow-color);animation:fadeInUp .5s var(--ease-out) both;flex-direction:column;align-items:center;margin:0 auto;padding:32px 24px 24px;display:flex}.sw-live{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}.sw-ring{width:220px;height:220px;margin-bottom:24px;position:relative}.sw-ring svg{width:100%;height:100%}.sw-ring-live{animation:2s ease-in-out infinite swPulse}@keyframes swPulse{0%,to{filter:drop-shadow(0 0 8px var(--accent-glow));opacity:1}50%{opacity:.5}}.sw-time{justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;inset:0}.sw-time-num{letter-spacing:-.02em;color:var(--text-1);font-variant-numeric:tabular-nums;font-size:3rem;font-weight:800}.sw-time-sep{color:var(--text-3);font-size:3rem;font-weight:800}.sw-buttons{gap:10px;margin-bottom:12px;display:flex}.sw-btn{cursor:pointer;transition:all var(--dur-base) var(--ease);border:none;border-radius:9999px;align-items:center;gap:7px;padding:12px 26px;font-size:14px;font-weight:700;display:inline-flex}.sw-btn:hover{transform:scale(1.03)}.sw-btn:active{transform:scale(.96)}.sw-btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 0 26px var(--accent-glow)}.sw-btn-primary-green{background:var(--green);color:var(--on-accent);box-shadow:0 0 26px var(--green-glow)}.sw-btn-ghost{background:var(--surface-active);color:var(--text-1);border:1px solid var(--border)}.sw-reset{color:var(--text-3);cursor:pointer;transition:all var(--dur-base);background:0 0;border-radius:9999px;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex}.sw-reset:hover{color:var(--red);background:var(--red-soft)}.sw-laps{max-width:420px;animation:fadeInUp .5s var(--ease-out) .1s both;margin:14px auto 0}.sw-lap-list{flex-direction:column;max-height:240px;display:flex;overflow-y:auto}.sw-lap-row{border-radius:var(--r-md);border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;align-items:center;gap:12px;padding:10px 8px;display:flex}.sw-lap-row:last-child{border-bottom:none}.sw-lap-num{width:44px;color:var(--text-3);font-size:12px;font-weight:700}.sw-lap-time{color:var(--text-1);flex:1;font-size:15px;font-weight:800}.sw-lap-diff{color:var(--teal);font-size:12px;font-weight:700}@media (width<=480px){.sw-ring{width:200px;height:200px}.sw-time-num,.sw-time-sep{font-size:2.4rem}}.sts{opacity:0;transition:opacity .35s var(--ease-out)}.sts-show{opacity:1}.sts-header{margin-bottom:24px}.sts-title{letter-spacing:-.04em;color:var(--text-1);font-size:2rem;font-weight:800}.sts-sub{color:var(--text-2);margin-top:2px;font-size:13px}.sts-hero{background:var(--surface);-webkit-backdrop-filter:blur(40px)saturate(180%);backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-2xl);box-shadow:var(--inset), 0 8px 32px var(--shadow-color);animation:fadeInUp .5s var(--ease-out) both;margin-bottom:12px;padding:26px;position:relative;overflow:hidden}.sts-hero-glow{background:radial-gradient(circle, var(--accent-glow) 0%, transparent 70%);border-radius:50%;width:200px;height:200px;animation:5s ease-in-out infinite breathe-soft;position:absolute;top:-50%;right:-15%}.sts-hero-inner{z-index:1;align-items:center;gap:22px;display:flex;position:relative}.sts-hero-ring{flex-shrink:0;width:92px;height:92px;position:relative}.sts-hero-ring svg{width:100%;height:100%}.sts-hero-num{letter-spacing:-.03em;color:var(--text-1);justify-content:center;align-items:center;font-size:1.6rem;font-weight:800;display:flex;position:absolute;inset:0}.sts-hero-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:10px;font-weight:700}.sts-hero-sub{color:var(--text-1);font-size:14px;font-weight:500}.sts-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.sts-card{background:var(--surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--inset);animation:fadeInUp .4s var(--ease-out) both;padding:16px}.sts-card-label{color:var(--text-3);margin-bottom:6px;font-size:10px}.sts-card-value{letter-spacing:-.02em;color:var(--text-1);font-size:1.4rem;font-weight:800}.sts-blue .sts-card-value{color:var(--accent)}.sts-green .sts-card-value{color:var(--green)}.sts-orange .sts-card-value{color:var(--orange)}.sts-red .sts-card-value{color:var(--red)}.sts-purple .sts-card-value{color:var(--purple)}.sts-teal .sts-card-value{color:var(--teal)}.sts-pink .sts-card-value{color:var(--pink)}.sts-yellow .sts-card-value{color:var(--yellow)}.sts-block{background:var(--surface);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--inset);animation:fadeInUp .4s var(--ease-out) both;margin-top:16px;padding:18px}.sts-block-head{margin-bottom:12px}.sts-empty{color:var(--text-3);padding:8px 2px;font-size:12.5px}.pr-table{flex-direction:column;gap:4px;display:flex}.pr-table-row{border-radius:var(--r-md);background:var(--surface-active);animation:fadeInUp .4s var(--ease-out) both;align-items:center;gap:10px;padding:10px 12px;display:flex}.pr-table-name{flex:1;font-size:13px;font-weight:600}.pr-table-badge{color:var(--yellow);background:var(--yellow-soft);border-radius:9999px;padding:2px 7px;font-size:10px;font-weight:800}.pr-table-val{color:var(--text-1);font-size:13px;font-weight:700}.ach-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.ach-item{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-active);opacity:.55;filter:grayscale(.9);animation:fadeInUp .4s var(--ease-out) both;align-items:center;gap:10px;padding:10px 12px;display:flex}.ach-item.ach-earned{opacity:1;filter:none;border-color:color-mix(in srgb, var(--cat) 35%, transparent);background:color-mix(in srgb, var(--cat) 8%, transparent)}.ach-icon{width:38px;height:38px;color:var(--cat);background:color-mix(in srgb, var(--cat) 15%, transparent);border:1px solid color-mix(in srgb, var(--cat) 25%, transparent);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ach-info{flex-direction:column;min-width:0;display:flex}.ach-name{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.ach-progress{color:var(--text-3);font-size:10px}@media (width<=480px){.sts-grid{grid-template-columns:1fr 1fr}.sts-title{font-size:1.5rem}}.set{opacity:0;max-width:500px;transition:opacity .35s var(--ease-out)}.set-show{opacity:1}@media (width>=900px){.set{max-width:720px}}.set-goal-row{justify-content:center;align-items:center;gap:22px;padding:18px;display:flex}.set-goal-btn{background:var(--surface-active);border:1px solid var(--border);width:44px;height:44px;color:var(--text-2);transition:all var(--dur-base);border-radius:50%;justify-content:center;align-items:center;font-size:22px;font-weight:700;display:flex}.set-goal-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.set-goal-btn:active{transform:scale(.88)}.set-goal-value{flex-direction:column;align-items:center;min-width:80px;display:flex}.set-goal-num{letter-spacing:-.03em;color:var(--text-1);font-size:2rem;font-weight:800}.set-goal-cap{color:var(--text-3);font-size:11px}.set-header{margin-bottom:28px}.set-title{letter-spacing:-.04em;color:var(--text-1);font-size:2rem;font-weight:800}.set-sub{color:var(--text-2);margin-top:2px;font-size:13px}.set-section{margin-bottom:24px}.set-section-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;padding-left:4px;font-size:10px;font-weight:700}.set-glass-card{background:var(--surface);-webkit-backdrop-filter:blur(40px)saturate(180%);backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--inset);padding:4px}.set-theme-row{grid-template-columns:1fr 1fr;gap:4px;display:grid}.set-theme-btn{border-radius:var(--r-md);color:var(--text-2);transition:all var(--dur-base) var(--ease);flex-direction:column;align-items:center;gap:8px;padding:16px 8px;font-size:12px;font-weight:600;display:flex}.set-theme-btn:hover{background:var(--surface-hover)}.set-theme-active{background:var(--surface-active)!important;color:var(--text-1)!important}.set-theme-preview{border-radius:var(--r-sm);border:1px solid var(--border);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.set-theme-preview[data-theme=dark]{color:#fff;background:radial-gradient(circle at 30% 30%,#0f0f15,#000)}.set-theme-preview[data-theme=light]{color:#1d1d1f;background:radial-gradient(circle at 30% 30%,#fff,#e8e8ec)}.set-theme-active .set-theme-preview{box-shadow:0 0 0 2px var(--accent)}.set-lang-row{grid-template-columns:1fr 1fr;gap:4px;display:grid}.set-lang-btn{border-radius:var(--r-md);color:var(--text-2);transition:all var(--dur-base) var(--ease);align-items:center;gap:8px;padding:12px 14px;font-size:13px;font-weight:500;display:flex}.set-lang-btn:hover{background:var(--surface-hover)}.set-lang-active{background:var(--surface-active)!important;color:var(--text-1)!important}.set-lang-flag{background:var(--surface-hover);border-radius:4px;padding:2px 5px;font-size:10px;font-weight:700}.set-about-card{text-align:center;padding:28px 16px!important}.set-about-logo{margin-bottom:12px}.set-about-name{font-size:16px;font-weight:700}.set-about-tagline{color:var(--text-3);margin-top:4px;font-size:12px}.set-account-card{padding:6px!important}.set-account-row{align-items:center;gap:12px;padding:10px 10px 12px;display:flex}.set-account-avatar{background:linear-gradient(135deg, var(--accent), var(--green));width:44px;height:44px;color:var(--on-accent);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:800;display:flex}.set-account-info{min-width:0}.set-account-name{color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.set-account-role{color:var(--text-3);margin-top:2px;font-size:12px}.set-logout{border-radius:var(--r-md);width:100%;color:var(--red);background:color-mix(in srgb, var(--red) 10%, transparent);transition:all var(--dur-base) var(--ease);justify-content:center;align-items:center;gap:8px;margin-top:2px;padding:12px;font-size:13px;font-weight:600;display:flex}.set-logout:hover{background:color-mix(in srgb, var(--red) 18%, transparent)}.set-logout:active{transform:scale(.98)}@media (width<=480px){.set{max-width:100%}.set-title{font-size:1.5rem}}.prof{opacity:0;max-width:720px;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);margin:0 auto;padding:24px 20px 130px;transform:translateY(14px)}.prof-show{opacity:1;transform:none}.prof-hero{text-align:center;border-radius:var(--r-2xl);border:1px solid var(--border);background:linear-gradient(180deg, color-mix(in srgb, var(--accent-soft) 40%, var(--surface-active)), var(--surface-active));box-shadow:var(--glass-shadow);padding:34px 20px 26px;position:relative;overflow:hidden}.prof-hero-glow{background:radial-gradient(closest-side, var(--purple-glow), transparent 70%);opacity:.5;pointer-events:none;height:140%;position:absolute;inset:-60% -30% auto}.prof-avatar-wrap{z-index:1;display:inline-block;position:relative}.prof-avatar{border:3px solid var(--border-strong);background:var(--surface-hover);cursor:pointer;width:108px;height:108px;transition:transform .3s var(--ease-spring), box-shadow .3s var(--ease-out);box-shadow:0 10px 30px var(--shadow-color);border-radius:50%;justify-content:center;align-items:center;display:flex;overflow:hidden}.prof-avatar:hover{box-shadow:0 14px 36px var(--shadow-color), 0 0 0 6px var(--accent-soft);transform:scale(1.04)}.prof-avatar-img{object-fit:cover;width:100%;height:100%}.prof-avatar-initials{color:var(--text-1);font-size:40px;font-weight:800}.prof-avatar-badge{background:var(--accent);width:30px;height:30px;color:var(--on-accent);border:3px solid var(--surface-active);box-shadow:0 4px 12px var(--shadow-color);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:4px;right:0}.prof-photo-clear{background:var(--red);color:#fff;border:3px solid var(--surface-active);cursor:pointer;width:28px;height:28px;box-shadow:0 4px 12px var(--shadow-color);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:4px;left:0}.prof-name{letter-spacing:-.02em;color:var(--text-1);z-index:1;margin:14px 0 2px;font-size:26px;font-weight:800;position:relative}.prof-member{color:var(--text-3);z-index:1;margin:0 0 14px;font-size:13px;position:relative}.prof-level-chip{z-index:1;border-radius:var(--r-full);background:color-mix(in srgb, var(--lvl) 14%, var(--surface));color:var(--lvl);border:1px solid color-mix(in srgb, var(--lvl) 30%, transparent);align-items:center;gap:7px;padding:7px 14px;font-size:13px;font-weight:700;display:inline-flex;position:relative}.prof-level-icon{display:flex}.prof-level-label{white-space:nowrap}.prof-xp{z-index:1;max-width:320px;margin:18px auto 6px;position:relative}.prof-xp-head{color:var(--text-3);justify-content:space-between;margin-bottom:7px;font-size:11px;font-weight:600;display:flex}.prof-xp-num{color:var(--accent)}.prof-xp-track{border-radius:var(--r-full);background:var(--surface-hover);height:8px;overflow:hidden}.prof-xp-fill{border-radius:var(--r-full);background:linear-gradient(90deg, var(--accent), var(--green));height:100%;transition:width 1s var(--ease-out)}.prof-praise{color:var(--text-2);z-index:1;margin:16px 0 0;font-size:14px;position:relative}.prof-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0;display:grid}.prof-stat{text-align:center;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface-active);box-shadow:var(--glass-shadow-sm);flex-direction:column;gap:4px;padding:16px 8px;display:flex}.prof-stat-num{color:var(--text-1);font-size:20px;font-weight:800}.prof-stat-cap{color:var(--text-3);font-size:11px;font-weight:600}.prof-block{border-radius:var(--r-2xl);border:1px solid var(--border);background:var(--surface-active);box-shadow:var(--glass-shadow-sm);margin-bottom:18px;padding:18px}.prof-block-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.prof-block-label{color:var(--text-1);margin:0;font-size:14px;font-weight:800}.prof-block-hint{color:var(--text-3);font-size:11px;font-weight:600}.prof-edit-btn{cursor:pointer;color:var(--accent);background:var(--accent-soft);border-radius:var(--r-full);transition:all var(--dur-base);border:none;align-items:center;gap:5px;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.prof-edit-btn:hover{filter:brightness(1.08)}.prof-bio-text{color:var(--text-1);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.6}.prof-bio-empty{color:var(--text-3);margin:0;font-size:14px;font-style:italic}.prof-bio-edit{flex-direction:column;gap:10px;display:flex}.prof-bio-input{resize:none;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text-1);transition:border-color var(--dur-base);outline:none;padding:12px 14px;font-family:inherit;font-size:14px;line-height:1.5}.prof-bio-input:focus{border-color:var(--accent)}.prof-bio-actions{justify-content:flex-end;gap:8px;display:flex}.prof-btn{border-radius:var(--r-md);cursor:pointer;transition:all var(--dur-base);border:none;align-items:center;gap:6px;padding:9px 14px;font-size:13px;font-weight:700;display:inline-flex}.prof-btn-primary{background:var(--accent);color:var(--on-accent)}.prof-btn-primary:hover:not(:disabled){filter:brightness(1.08)}.prof-btn-primary:disabled{opacity:.5;cursor:default}.prof-btn-ghost{background:var(--surface-hover);color:var(--text-2)}.prof-btn-ghost:hover{color:var(--text-1)}.prof-hobby-selected{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.prof-hobby-empty{color:var(--text-3);margin:0 0 14px;font-size:13px;font-style:italic}.prof-hobby-tag{border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);cursor:pointer;transition:all var(--dur-base);align-items:center;gap:6px;padding:7px 10px;font-size:12.5px;font-weight:700;display:inline-flex}.prof-hobby-tag:hover{background:color-mix(in srgb, var(--red) 12%, var(--surface));border-color:color-mix(in srgb, var(--red) 30%, transparent)}.prof-hobby-x{opacity:.6}.prof-hobby-suggest{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.prof-hobby-chip{border-radius:var(--r-full);background:var(--surface);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:all var(--dur-base);align-items:center;gap:6px;padding:8px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.prof-hobby-chip:hover{border-color:var(--border-hover);color:var(--text-1)}.prof-hobby-chip-on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 4px 14px var(--accent-glow)}.prof-hobby-custom{gap:8px;display:flex}.prof-hobby-input{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);min-width:0;color:var(--text-1);transition:border-color var(--dur-base);outline:none;flex:1;padding:11px 14px;font-family:inherit;font-size:14px}.prof-hobby-input:focus{border-color:var(--accent)}.prof-ach-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.prof-ach{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);opacity:0;animation:fadeInUp .4s var(--ease-out) both;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:16px 10px 14px;display:flex}.prof-ach-icon{border-radius:var(--r-md);background:var(--surface-hover);width:44px;height:44px;color:var(--text-3);justify-content:center;align-items:center;display:flex}.prof-ach-earned .prof-ach-icon{background:color-mix(in srgb, var(--cat) 16%, var(--surface));color:var(--cat)}.prof-ach-name{color:var(--text-3);font-size:11.5px;font-weight:700}.prof-ach-earned .prof-ach-name{color:var(--text-1)}.prof-ach-status{color:var(--green);font-size:13px;font-weight:900}.prof-ach-locked{color:var(--text-3);opacity:.7}.prof-fav-list{flex-direction:column;gap:10px;display:flex}.prof-fav-row{align-items:center;gap:10px;display:flex}.prof-fav-name{color:var(--text-1);flex:0 0 40%;align-items:center;gap:6px;min-width:0;font-size:12.5px;font-weight:600;display:flex}.prof-fav-name svg{color:var(--accent);flex-shrink:0}.profile-fav-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.prof-fav-bar{border-radius:var(--r-full);background:var(--surface-hover);flex:1;height:8px;overflow:hidden}.prof-fav-fill{border-radius:var(--r-full);background:linear-gradient(90deg, var(--accent), var(--green));height:100%;transition:width .8s var(--ease-out)}.prof-fav-count{color:var(--text-3);flex-shrink:0;font-size:11px;font-weight:700}.prof-streak{z-index:1;border-radius:var(--r-full);background:color-mix(in srgb, var(--streak) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--streak) 28%, transparent);align-items:center;gap:8px;margin-top:16px;padding:8px 16px;display:inline-flex;position:relative}.prof-streak-icon{color:var(--streak);display:flex}.prof-streak-num{color:var(--text-1);font-size:20px;font-weight:900;line-height:1}.prof-streak-cap{color:var(--text-2);font-size:12px;font-weight:700}.prof-stats-bars{z-index:1;text-align:left;flex-direction:column;gap:14px;margin-top:18px;padding:0 4px;display:flex;position:relative}.prof-statbar{opacity:0;animation:fadeInUp .45s var(--ease-out) both}.prof-statbar-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.prof-statbar-label{align-items:center;gap:7px;font-size:13px;font-weight:800;display:inline-flex}.prof-statbar-label svg{opacity:.9}.prof-statbar-num{color:var(--text-1);font-variant-numeric:tabular-nums;font-size:15px;font-weight:900}.prof-statbar-max{color:var(--text-3);margin-left:2px;font-size:11px;font-weight:700}.prof-statbar-track{border-radius:var(--r-full);background:var(--surface-hover);height:8px;overflow:hidden}.prof-statbar-fill{border-radius:var(--r-full);height:100%;box-shadow:0 0 10px color-mix(in srgb, currentColor 0%, transparent);transition:width 1.1s var(--ease-out)}@media (width<=480px){.prof{padding:18px 14px 120px}.prof-stats{grid-template-columns:repeat(2,1fr)}.prof-hobby-custom{flex-wrap:wrap}.prof-hobby-input{flex:100%}.prof-hobby-custom .prof-btn{flex:1;justify-content:center}}.auth{z-index:500;background:var(--bg);opacity:0;transition:opacity .6s var(--ease);justify-content:center;align-items:flex-start;padding:40px 20px 60px;display:flex;position:fixed;inset:0;overflow-y:auto}.auth-show{opacity:1}.auth .ambient{pointer-events:none;position:absolute;inset:0;overflow:hidden}.auth-inner{flex-direction:column;align-items:center;width:100%;max-width:400px;display:flex;position:relative}.auth-brand{text-align:center;flex-direction:column;align-items:center;gap:10px;margin:4vh 0 32px;display:flex}.auth-title{letter-spacing:-.03em;color:var(--text-1);font-size:26px;font-weight:800}.auth-tagline{color:var(--text-2);max-width:260px;font-size:14px;line-height:1.5}.auth-card{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(30px)saturate(180%);border-radius:24px;width:100%;padding:18px;box-shadow:0 20px 60px #00000059}.auth-tabs{background:var(--surface-hover);border-radius:14px;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:22px;padding:5px;display:grid}.auth-tab{color:var(--text-2);transition:all var(--dur-base) var(--ease);border-radius:10px;padding:10px;font-size:14px;font-weight:600}.auth-tab-active{background:var(--bg);color:var(--text-1);box-shadow:0 2px 10px #00000040}.auth-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin:14px 2px 7px;font-size:12px;font-weight:600;display:block}.auth-input{background:var(--surface-hover);border:1px solid var(--border);width:100%;color:var(--text-1);transition:border-color var(--dur-base) var(--ease), box-shadow var(--dur-base) var(--ease);border-radius:13px;outline:none;padding:13px 15px;font-size:15px}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}.auth-input::placeholder{color:var(--text-3)}.auth-langs{grid-template-columns:1fr 1fr;gap:10px;margin-top:2px;display:grid}.auth-lang{border:1px solid var(--border);background:var(--surface-hover);color:var(--text-2);transition:all var(--dur-base) var(--ease);border-radius:13px;align-items:center;gap:9px;padding:12px 13px;font-size:14px;font-weight:600;display:flex}.auth-lang-active{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface-hover));color:var(--text-1)}.auth-lang-flag{background:var(--bg);border:1px solid var(--border);color:var(--text-2);letter-spacing:.04em;border-radius:7px;padding:4px 7px;font-size:11px;font-weight:800}.auth-lang-active .auth-lang-flag{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 40%, var(--border))}.auth-error{color:var(--red);background:color-mix(in srgb, var(--red) 12%, transparent);border:1px solid color-mix(in srgb, var(--red) 28%, transparent);border-radius:11px;margin-top:14px;padding:11px 13px;font-size:13px}.auth-submit{border-radius:var(--r-lg);background:linear-gradient(135deg, var(--accent), var(--green));width:100%;color:var(--on-accent);letter-spacing:-.01em;transition:transform var(--dur-base) var(--ease), opacity var(--dur-base) var(--ease), box-shadow var(--dur-base) var(--ease);box-shadow:0 3px 0 var(--shadow-color-deep), 0 10px 30px color-mix(in srgb, var(--accent) 35%, transparent);margin-top:20px;padding:15px;font-size:15px;font-weight:700}.auth-submit:hover{transform:translateY(-1px)}.auth-submit:active{transform:translateY(0)}.auth-submit-busy{opacity:.7;pointer-events:none}.auth-hint{text-align:center;color:var(--text-3);margin-top:18px;font-size:13px}.auth-switch{color:var(--accent);margin-left:6px;font-weight:700}@media (width>=768px){.auth-inner{max-width:440px}}.splash{z-index:5000;background:var(--bg);background-image:var(--bg-grad);transition:opacity .75s var(--ease-out), transform .75s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:fixed;inset:0;overflow:hidden}.splash-leaving{opacity:0;transform:scale(1.12)}.splash-aura{background:radial-gradient(circle, var(--accent) 0%, transparent 68%);opacity:.32;filter:blur(30px);border-radius:50%;width:340px;height:340px;animation:3.2s ease-in-out infinite breathe-glow;position:absolute}.splash-logo{z-index:2;filter:drop-shadow(0 10px 30px var(--accent-glow));animation:2.8s ease-in-out infinite logo-float;position:relative}.splash-ring{border:1px solid var(--accent);animation:splash-ring 2s var(--ease-out) infinite;border-radius:50%;position:absolute}.splash-ring.r1{width:130px;height:130px}.splash-ring.r2{width:190px;height:190px;animation-delay:.5s}.splash-ring.r3{border-color:var(--green);width:250px;height:250px;animation-delay:1s}.splash-name{z-index:2;letter-spacing:-.03em;background:linear-gradient(135deg, var(--text-1), var(--text-2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:900;position:relative}.splash-tag{z-index:2;color:var(--text-3);letter-spacing:.02em;font-size:13px;font-weight:500;position:relative}.splash-loadbar{z-index:2;background:var(--surface);border:1px solid var(--border);border-radius:9999px;width:190px;height:4px;margin-top:18px;position:relative;overflow:hidden}.splash-loadbar-fill{background:linear-gradient(90deg, var(--green), var(--accent));transform-origin:0;width:100%;height:100%;animation:splash-fill 2.4s var(--ease-out) both;animation-name:splash-fill,shimmer;animation-duration:2.4s,1.1s;animation-timing-function:var(--ease-out), linear;background-size:200% 100%;animation-iteration-count:1,infinite}@keyframes splash-fill{0%{transform:scaleX(0)}60%{transform:scaleX(.55)}to{transform:scaleX(1)}}.fade-stage{opacity:0;animation:fadeInUp .7s var(--ease-out) both}.fade-stage.s1{animation-delay:.15s}.fade-stage.s2{animation-delay:.5s}.fade-stage.s3{animation-delay:.85s}.fade-stage.s4{animation-delay:1.2s}.shell{min-height:100dvh;position:relative;overflow-x:hidden}.noise{z-index:0;pointer-events:none;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:140px;position:fixed;inset:0}.ambient{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient-blob{filter:blur(110px);border-radius:50%;position:absolute}.ambient-blob.b1{background:radial-gradient(circle, var(--accent) 0%, transparent 70%);opacity:.22;width:460px;height:460px;animation:10s ease-in-out infinite breathe-glow;top:-180px;left:-140px}.ambient-blob.b2{background:radial-gradient(circle, var(--purple) 0%, transparent 70%);opacity:.18;width:420px;height:420px;animation:12s ease-in-out infinite reverse breathe-glow;bottom:-140px;right:-140px}.ambient-blob.b3{background:radial-gradient(circle, var(--green) 0%, transparent 70%);opacity:.12;width:300px;height:300px;animation:14s ease-in-out infinite breathe-glow;top:40%;left:60%}.app-header{z-index:200;position:relative}.app-header-inner{align-items:center;max-width:960px;margin:0 auto;padding:16px 24px 4px;display:flex}.app-brand{transition:background var(--dur-base) var(--ease);border-radius:9999px;align-items:center;gap:10px;padding:4px 10px 4px 4px;display:flex}.app-brand:hover{background:var(--surface-hover)}.app-brand-name{letter-spacing:-.02em;color:var(--text-1);font-size:18px;font-weight:800}.m-logo{border-radius:12px;flex-shrink:0;display:inline-flex}.main{z-index:1;width:100%;max-width:1080px;animation:fadeIn .35s var(--ease-out) forwards;margin:0 auto;padding:26px 24px 170px;position:relative}.app-layout{z-index:1;width:100%;max-width:1280px;margin:0 auto;position:relative}.sidebar{z-index:250;border-right:1px solid var(--border);background:var(--dock-bg);-webkit-backdrop-filter:blur(60px)saturate(180%);width:260px;box-shadow:var(--inset);flex-direction:column;gap:22px;padding:28px 18px 20px;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.sidebar-brand{align-items:center;gap:12px;padding:0 6px;display:flex}.sidebar-brand-text{flex-direction:column;display:flex}.sidebar-brand-name{letter-spacing:-.02em;font-size:16px;font-weight:800}.sidebar-brand-sub{color:var(--text-3);font-size:11px}.sidebar-section{flex-direction:column;gap:8px;display:flex}.sidebar-section-label{text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);padding:0 10px;font-size:10px;font-weight:700}.sidebar-menu{flex-direction:column;gap:3px;display:flex}.side-item{border-radius:var(--r-md);color:var(--text-2);transition:all var(--dur-base) var(--ease);align-items:center;gap:12px;padding:10px 12px;font-size:13.5px;font-weight:600;display:flex}.side-item:hover{background:var(--surface-hover);color:var(--text-1)}.side-item-active{background:var(--accent-soft);color:var(--accent)}.side-icon{justify-content:center;align-items:center;width:22px;height:22px;display:flex}.side-item-cat .side-icon,.side-item-cat:hover .side-icon{color:var(--cat)}.side-cat-active{background:color-mix(in srgb, var(--cat) 14%, transparent);color:var(--text-1)}.side-cat-active .side-label{color:var(--cat)}.sidebar-foot{margin-top:auto}.side-streak{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--inset);padding:14px}.side-streak-inner{align-items:center;gap:12px;display:flex}.side-streak-flame{width:38px;height:38px;color:var(--orange);background:var(--orange-soft);border:1px solid color-mix(in srgb, var(--orange) 28%, transparent);border-radius:12px;justify-content:center;align-items:center;animation:3s ease-in-out infinite breathe-soft;display:flex}.side-streak-text{flex-direction:column;display:flex}.side-streak-num{font-size:16px;font-weight:800}.side-streak-cap{color:var(--text-3);font-size:11px}@media (width<=1023px){.sidebar{display:none}.app-layout{max-width:960px}}.dock-wrap{z-index:300;width:max-content;max-width:calc(100vw - 20px);position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.dock{background:var(--dock-bg);-webkit-backdrop-filter:blur(60px)saturate(200%);border:1px solid var(--border-strong);border-radius:var(--r-2xl);box-shadow:0 20px 60px -20px var(--shadow-color), var(--inset);animation:slideUp .5s var(--ease-out) .2s both;padding:7px 9px;position:relative}.dock:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff1f,#0000 40%);position:absolute;inset:0}.dock-group{align-items:center;gap:2px;display:flex}.dock-sep{background:var(--border);align-self:stretch;width:1px;margin:6px 7px}.dock-item{border-radius:var(--r-lg);transition:background var(--dur-base) var(--ease);flex-direction:column;align-items:center;gap:3px;padding:6px 12px 5px;display:flex;position:relative}.dock-item:hover{background:var(--surface-hover)}.dock-item:active{transform:scale(.9)}.dock-item-active{background:var(--surface-active);box-shadow:var(--inset);transform:translateY(-3px)}.dock-icon{width:26px;height:26px;color:var(--text-2);transition:color var(--dur-base), transform var(--dur-base) var(--ease-spring);justify-content:center;align-items:center;display:flex}.dock-item:hover .dock-icon{color:var(--text-1);transform:translateY(-2px)scale(1.1)}.dock-item-active .dock-icon{color:var(--accent)}.dock-label{color:var(--text-3);white-space:nowrap;transition:color var(--dur-base);font-size:9px;font-weight:600}.dock-item-active .dock-label{color:var(--accent)}.dock-item-cat .dock-icon,.dock-item-cat:hover .dock-icon{color:var(--cat)}.dock-item-cat:after{content:"";background:var(--cat);opacity:0;width:12px;height:2px;transition:opacity var(--dur-base);border-radius:2px;position:absolute;bottom:3px}.dock-item-cat:hover:after,.dock-cat-active:after{opacity:1}.dock-cat-active{background:var(--surface-active)}.dock-cat-active .dock-icon,.dock-cat-active .dock-label{color:var(--cat)!important}.dock-arrow{z-index:2;border-radius:var(--r-md);width:26px;height:42px;color:var(--text-1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;opacity:0;transition:opacity var(--dur-base), background var(--dur-base);background:linear-gradient(90deg,#000000a6,#0000);border:none;justify-content:center;align-items:center;animation:none;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.dock-arrow-back{border-radius:var(--r-md) 0 0 var(--r-md);left:0}.dock-arrow-fwd{border-radius:0 var(--r-md) var(--r-md) 0;background:linear-gradient(-90deg,#000000a6,#0000);right:0}.dock-arrow-show{opacity:1;animation:1.6s ease-in-out .6s infinite arrow-nudge}.dock-arrow-back.dock-arrow-show{animation-name:arrow-nudge-back}@keyframes arrow-nudge{0%,to{transform:translateY(-50%)}50%{transform:translateY(-50%)translate(2px)}}@keyframes arrow-nudge-back{0%,to{transform:translateY(-50%)}50%{transform:translateY(-50%)translate(-2px)}}.dock-scroll-edge{pointer-events:none;z-index:1;width:22px;position:absolute;top:0;bottom:0}.dock-scroll-edge.left{border-radius:var(--r-2xl) 0 0 var(--r-2xl);background:linear-gradient(90deg,#00000059,#0000);left:0}.dock-scroll-edge.right{border-radius:0 var(--r-2xl) var(--r-2xl) 0;background:linear-gradient(-90deg,#00000059,#0000);right:0}.toast-wrap{z-index:4000;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;top:72px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--r-full);color:var(--text-1);background:var(--glass-solid);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid var(--border);box-shadow:0 12px 40px -12px var(--shadow-color), var(--inset);animation:slideUp .3s var(--ease-spring) both;pointer-events:auto;cursor:pointer;align-items:center;gap:8px;padding:9px 16px 9px 12px;font-size:12px;font-weight:600;display:flex}.toast-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.toast-success .toast-dot{background:var(--green);box-shadow:0 0 8px var(--green-glow)}.toast-error .toast-dot{background:var(--red);box-shadow:0 0 8px var(--red-glow)}.toast-info .toast-dot{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}@media (width>=1024px){.app-header,.dock-wrap{display:none}.app-layout{max-width:none}.main{max-width:none;padding-top:34px;padding-left:296px;padding-right:40px}}@media (width<=900px){.dock-group{scrollbar-width:none;overflow-x:auto}.dock-group::-webkit-scrollbar{display:none}.dock-wrap{width:calc(100vw - 20px)}.main{padding:20px 16px 160px}}@media (width<=520px){.dock{border-radius:var(--r-xl);padding:6px}.dock-item{padding:6px 9px 5px}.dock-label{font-size:8px}.app-header-inner{padding:10px 16px}}
