:root{--header-height: 64px;--bg-primary: #ffffff;--bg-secondary: #ffffff;--text-primary: #363636;--text-secondary: #757575;--border-color: #e5e5e5;--accent-color: #2196f3;--accent-hover: #1976d2;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .12)}html.dark-mode{--bg-primary: #2d2d2d;--bg-secondary: #2d2d2d;--text-primary: #ffffff;--text-secondary: #adb5bd;--border-color: #404040;--accent-color: #42a5f5;--accent-hover: #2196f3;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);min-height:100vh;transition:background-color .2s ease;color:var(--text-primary)}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-container{display:flex;flex:1;overflow:hidden}.app-container-immersive{overflow:auto}.main-content{flex:1;overflow-y:auto;background:var(--bg-primary);position:relative;transition:background .3s ease;width:100%;padding-top:var(--header-height)}.main-content-immersive{padding-top:0}.message{position:fixed;top:90px;right:20px;padding:15px 20px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:15px;max-width:400px;animation:slideIn .3s ease-out;box-shadow:0 5px 20px #0003;z-index:1001;font-weight:600}@keyframes slideIn{0%{transform:translate(420px);opacity:0}to{transform:translate(0);opacity:1}}.message-success{background-color:#4caf50;color:#fff}.message-error{background-color:#f44336;color:#fff}.message-warning{background-color:#ff9800;color:#fff}.message-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.2em;padding:0;opacity:.8;transition:opacity .2s}.message-close:hover{opacity:1}.error-log-panel{position:fixed;bottom:20px;right:20px;background-color:#fff;border:2px solid #ff9800;border-radius:10px;box-shadow:0 10px 30px #0000004d;max-width:500px;max-height:600px;display:flex;flex-direction:column;z-index:999;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(650px);opacity:0}to{transform:translateY(0);opacity:1}}.error-log-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:2px solid #ff9800;background-color:#fff8f0}.error-log-header h3{margin:0;color:#d32f2f;font-size:1.1em}.error-log-close{background:none;border:none;font-size:1.5em;color:#d32f2f;cursor:pointer;transition:transform .2s}.error-log-close:hover{transform:scale(1.2)}.error-log-content{overflow-y:auto;flex:1;padding:15px}.error-log-item{margin-bottom:15px;padding:12px;background-color:#f5f5f5;border-left:4px solid #d32f2f;border-radius:4px;font-family:Courier New,monospace;font-size:.85em}.error-log-time{color:#666;font-size:.8em;margin-bottom:8px}.error-log-message{color:#d32f2f;margin-bottom:8px;word-break:break-word}.error-log-context{color:#666;font-size:.8em;margin-bottom:8px}.error-log-stack{margin-top:8px;cursor:pointer}.error-log-stack summary{color:#06c;text-decoration:underline;padding:5px;border-radius:3px;transition:background-color .2s}.error-log-stack summary:hover{background-color:#e3f2fd}.error-log-stack pre{background-color:#fff;border:1px solid #ddd;padding:10px;border-radius:4px;overflow-x:auto;max-height:200px;overflow-y:auto;margin:10px 0 0;color:#333}.tool-content{width:100%;max-width:100%}@media (min-width: 769px){.sidemenu{transform:translate(0)!important}}@media (max-width: 768px){.message{top:80px;right:10px;left:10px;max-width:unset}.error-log-panel{right:10px;left:10px;max-width:unset;bottom:60px}}@media (max-width: 480px){.message{top:75px;right:5px;left:5px;padding:12px 15px;font-size:.9em}.error-log-panel{right:5px;left:5px;max-height:50vh;bottom:50px}.error-log-content{padding:10px}.error-log-item{padding:10px;font-size:.8em;margin-bottom:10px}}.main-content::-webkit-scrollbar,.sidemenu-nav::-webkit-scrollbar,.error-log-content::-webkit-scrollbar{width:8px}.main-content::-webkit-scrollbar-track,.sidemenu-nav::-webkit-scrollbar-track,.error-log-content::-webkit-scrollbar-track{background:#0000001a}.main-content::-webkit-scrollbar-thumb,.sidemenu-nav::-webkit-scrollbar-thumb,.error-log-content::-webkit-scrollbar-thumb{background:#667eea80;border-radius:4px}.main-content::-webkit-scrollbar-thumb:hover,.sidemenu-nav::-webkit-scrollbar-thumb:hover,.error-log-content::-webkit-scrollbar-thumb:hover{background:#667eeab3}.header{height:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);position:fixed;top:0;left:0;right:0;z-index:100;box-shadow:var(--shadow-sm)}.header-container{max-width:none;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:flex-start;padding:0 24px;gap:24px;min-width:0}.header-logo{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px;text-decoration:none;flex:0 0 auto;min-width:0}.header-logo h1{font-size:22px;font-weight:700;margin:0;color:var(--accent-color);letter-spacing:0;white-space:nowrap;flex:0 0 auto}.header-nav{display:flex;gap:4px;flex:1;max-width:none;min-width:0;justify-content:center;overflow:visible}.nav-link{background:none;border:none;color:var(--text-primary);font-size:15px;font-weight:500;padding:8px 16px;border-radius:6px;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:flex;align-items:center;gap:6px;text-decoration:none;flex:0 0 auto;min-width:max-content}.nav-link:hover{background:var(--bg-primary);color:var(--accent-color)}.nav-dropdown{position:relative;flex:0 0 auto}.dropdown-arrow{font-size:10px;transition:transform .2s ease}.nav-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:50%;min-width:280px;max-height:70vh;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 24px #0000001f;padding:16px 12px 12px;margin-top:0;z-index:1000;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-8px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}.nav-dropdown:hover .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)}.dropdown-menu.large{min-width:360px;max-width:980px;overflow-x:auto}.dropdown-menu.mega{min-width:720px;max-width:980px;padding:16px;overflow-x:auto}.dropdown-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.dropdown-section.span-all{grid-column:1 / -1}.image-columns{display:grid;gap:12px;grid-auto-flow:column;grid-auto-columns:minmax(140px,1fr);align-items:start;padding-bottom:4px;overflow-x:auto}.image-column{display:grid;gap:6px;min-width:140px}.image-column-title{font-size:13px;font-weight:600;color:var(--text-secondary);padding:0 8px}.image-list{display:flex;flex-direction:column;gap:6px;padding:4px 0}.image-list-divider{height:1px;background:var(--border-color);margin:6px 8px;opacity:.6}.dropdown-items{display:grid;gap:6px}.dropdown-items.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.dropdown-items.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-section{padding:8px 0}.dropdown-title{font-size:13px;font-weight:600;color:var(--text-secondary);margin:0 0 8px 12px;text-transform:uppercase;letter-spacing:.5px}.dropdown-item{width:100%;background:none;border:none;color:var(--text-primary);font-size:14px;font-weight:500;padding:10px 12px;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;display:flex;align-items:center;gap:10px;position:relative;text-decoration:none}.dropdown-item.compact{padding:8px 10px;font-size:13px}.dropdown-item:hover:not(.disabled){background:var(--bg-primary);color:var(--accent-color)}.dropdown-item.disabled{opacity:.5;cursor:not-allowed}.tool-icon{font-size:14px;flex-shrink:0}.coming-soon{margin-left:auto;font-size:11px;color:var(--text-secondary);background:var(--border-color);padding:2px 8px;border-radius:4px;font-weight:600}.dropdown-divider{height:1px;background:var(--border-color);margin:8px 0}.header-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:max-content;margin-left:auto}.header-sponsor{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;background:var(--accent-color);color:#fff;font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease;box-shadow:var(--shadow-sm)}.header-sponsor:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.language-switcher{display:flex;align-items:center;gap:4px;background:var(--bg-primary);border-radius:6px;padding:4px;flex:0 0 auto}.lang-btn{background:none;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;padding:6px 12px;border-radius:4px;cursor:pointer;transition:all .2s ease;min-width:max-content}.lang-btn:hover{color:var(--text-primary)}.lang-btn.active{background:var(--bg-secondary);color:var(--accent-color);font-weight:600;box-shadow:var(--shadow-sm)}.lang-divider{display:none}.theme-toggle{background:var(--bg-primary);border:none;color:var(--text-primary);width:36px;height:36px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s ease;flex:0 0 auto}.theme-toggle:hover{background:var(--border-color)}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-direction:column;gap:4px;z-index:1001}.menu-toggle span{width:24px;height:2px;background:var(--text-primary);border-radius:2px;transition:all .3s ease}.mobile-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:998}.mobile-menu{display:none;position:fixed;top:var(--header-height);right:0;width:280px;max-width:80vw;height:calc(100vh - var(--header-height));background:var(--bg-secondary);border-left:1px solid var(--border-color);box-shadow:-4px 0 12px #0000001a;overflow-y:auto;z-index:999;padding:16px;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-nav-link{width:100%;background:none;border:none;color:var(--text-primary);font-size:15px;font-weight:500;padding:12px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;display:block;margin-bottom:4px;text-decoration:none}.mobile-nav-link:hover:not(.disabled){background:var(--bg-primary);color:var(--accent-color)}.mobile-nav-link.disabled{opacity:.5;cursor:not-allowed}.mobile-section{margin:16px 0;padding:12px 0;border-top:1px solid var(--border-color)}.mobile-section:first-child{border-top:none;margin-top:0}.mobile-section-title{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding:0 16px}.mobile-tool{display:flex;align-items:center;gap:12px;position:relative}.mobile-tool .tool-icon{font-size:14px}.mobile-tool .coming-soon{margin-left:auto;font-size:10px;color:var(--text-secondary);background:var(--border-color);padding:2px 6px;border-radius:4px;font-weight:600}@media (max-width: 1440px){.header-container{gap:12px;padding:0 18px}.nav-link{padding:8px 9px;font-size:14px}.header-actions{gap:8px}}@media (max-width: 1420px){.header-container{padding:0 16px}.header-logo h1{font-size:18px}.header-nav{display:none}.menu-toggle{display:flex}.mobile-overlay,.mobile-menu{display:block}.language-switcher{padding:2px}.lang-btn{padding:4px 8px;font-size:12px}.theme-toggle{width:32px;height:32px;font-size:14px}}@media (max-width: 420px){.header-container{gap:8px;padding:0 12px}.header-logo h1{font-size:16px}.header-actions{gap:6px}.lang-btn{padding:4px 6px}.menu-toggle{padding:6px}}@media (min-width: 1200px){.dropdown-menu.large,.dropdown-menu.mega{width:min(1200px,calc(100vw - 80px));max-width:min(1200px,calc(100vw - 80px));overflow-x:visible}.nav-dropdown:hover .dropdown-menu.large,.nav-dropdown:hover .dropdown-menu.mega{transform:translate(-50%)}.image-columns{overflow-x:visible}}.logo-highlight{color:var(--accent-color);font-weight:800}.site-footer{border-top:1px solid var(--border-color);background:var(--bg-secondary);padding:14px 24px}.site-footer-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary);font-size:13px}.footer-sponsor{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;border:1px solid var(--accent-color);color:var(--accent-color);text-decoration:none;font-weight:600}.footer-sponsor:hover{background:var(--accent-color);color:#fff}@media (max-width: 720px){.site-footer-inner{flex-direction:column;text-align:center}}.footer-report-link{color:var(--text-secondary);font-size:12px;text-decoration:none;margin-left:12px}.footer-report-link:hover{color:var(--accent-color);text-decoration:underline}.home{padding-top:0;min-height:100vh;background:var(--bg-primary);position:relative;overflow:hidden}.home-decor{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.home-orb{position:absolute;border-radius:50%;filter:blur(0)}.home-orb-1{width:420px;height:420px;top:-140px;right:-160px;background:radial-gradient(circle at 30% 30%,rgba(33,150,243,.25),transparent 70%)}.home-orb-2{width:320px;height:320px;top:240px;left:-140px;background:radial-gradient(circle at 40% 40%,rgba(33,150,243,.18),transparent 70%)}.home-orb-3{width:260px;height:260px;bottom:280px;right:6%;background:radial-gradient(circle at 45% 45%,rgba(33,150,243,.2),transparent 72%)}.home-orb-4{width:380px;height:380px;bottom:-200px;left:18%;background:radial-gradient(circle at 35% 35%,rgba(33,150,243,.16),transparent 72%)}html.dark-mode .home-orb-1{background:radial-gradient(circle at 30% 30%,rgba(66,165,245,.3),transparent 70%)}html.dark-mode .home-orb-2{background:radial-gradient(circle at 40% 40%,rgba(66,165,245,.22),transparent 70%)}html.dark-mode .home-orb-3{background:radial-gradient(circle at 45% 45%,rgba(66,165,245,.2),transparent 70%)}html.dark-mode .home-orb-4{background:radial-gradient(circle at 35% 35%,rgba(66,165,245,.18),transparent 72%)}.home>section,.home>.wishpool-section{position:relative;z-index:1}.hero{padding:60px 24px 40px;text-align:center;position:relative}.hero-content{max-width:900px;margin:0 auto;background:linear-gradient(140deg,#2196f31f,#2196f305);border:1px solid rgba(33,150,243,.16);border-radius:22px;padding:38px 32px;box-shadow:var(--shadow-sm)}.hero h1{font-size:42px;font-weight:700;margin:0 0 16px;color:var(--text-primary);line-height:1.2}.progress-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:linear-gradient(90deg,#2196f32e,#2196f30a);border:1px solid rgba(33,150,243,.25);color:var(--text-secondary);font-size:13px;font-weight:600;margin:0 auto 16px}.progress-count{color:var(--text-primary)}.progress-input{width:52px;text-align:center;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#00000059;color:var(--text-primary);padding:2px 6px;font-size:13px;font-weight:600}.progress-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #d5443e33}.hero p{font-size:18px;color:var(--text-secondary);margin:0 0 40px;line-height:1.6}.hero-link{color:var(--accent-color);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;margin:0 4px}.hero-link:hover{color:var(--accent-color)}.hero-button{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));color:#fff;border:none;padding:16px 48px;font-size:17px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-md);display:inline-flex;align-items:center;gap:8px}.hero-button:hover{background:linear-gradient(135deg,var(--accent-hover),var(--accent-color));transform:translateY(-2px);box-shadow:0 6px 20px #d5443e4d}.home-avatar{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:10px 24px 30px;gap:10px;position:relative}.avatar-toggle{border:none;background:transparent;padding:0;cursor:pointer;position:relative;width:clamp(140px,22vw,220px);aspect-ratio:1 / 1;-webkit-tap-highlight-color:transparent}.avatar-toggle img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;border-radius:0;box-shadow:none;transition:transform .2s ease;object-fit:contain}.avatar-bubble{position:absolute;bottom:12%;opacity:0;animation-name:bubble-float;animation-timing-function:ease-out;animation-fill-mode:forwards;pointer-events:none;filter:drop-shadow(0 4px 8px rgba(0,0,0,.15))}.avatar-counter{font-size:.95rem;color:var(--text-secondary)}.avatar-counter-sub{font-size:.85rem;opacity:.8}.avatar-reset{border:1px solid rgba(239,68,68,.4);background:#ef444414;color:#b91c1c;border-radius:999px;padding:6px 12px;font-size:.8rem;cursor:pointer}.avatar-admin-controls{display:grid;gap:8px;align-items:center;justify-items:center}.avatar-edit-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}.avatar-edit-input{width:120px;border:1px solid rgba(148,163,184,.6);border-radius:999px;padding:6px 10px;font-size:.85rem;background:#ffffffe6;color:var(--text-primary);text-align:center}.avatar-edit-save{border:1px solid rgba(59,130,246,.35);background:#3b82f61f;color:#1d4ed8;border-radius:999px;padding:6px 12px;font-size:.8rem;cursor:pointer}.avatar-edit-save:disabled{opacity:.6;cursor:not-allowed}html.dark-mode .avatar-reset{border:1px solid rgba(248,113,113,.4);background:#f871711f;color:#fecaca}html.dark-mode .avatar-edit-input{border:1px solid rgba(148,163,184,.35);background:#0f172a99;color:#f8fafc}html.dark-mode .avatar-edit-save{border:1px solid rgba(59,130,246,.5);background:#3b82f633;color:#bfdbfe}@keyframes bubble-float{0%{transform:translate(-50%,10px);opacity:0}20%{opacity:.9}to{transform:translate(calc(-50% + var(--bubble-drift, 0px)),-80px);opacity:0}}.tools-section{padding:40px 24px 80px;max-width:1200px;margin:0 auto;position:relative}.tools-section h2{font-size:28px;font-weight:600;margin:0 0 32px;color:var(--text-primary);text-align:center;letter-spacing:.02em}.tools-carousel{position:relative;max-width:1120px;margin:0 auto;padding:0 32px}.tools-grid{display:block;overflow:hidden;padding:8px 2px 16px;margin:0;cursor:default;-webkit-user-select:none;user-select:none;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tools-track{display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,minmax(0,1fr));grid-auto-columns:220px;column-gap:16px;row-gap:16px;transition:transform .25s ease;will-change:transform;align-content:start}.tools-track.is-jumping,.tools-track.is-dragging{transition:none}.tools-nav{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);box-shadow:var(--shadow-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.tools-nav:hover{border-color:var(--accent-color);color:var(--accent-color);transform:translateY(-50%) scale(1.05);box-shadow:var(--shadow-md)}.tools-nav-left{left:6px}.tools-nav-right{right:6px}.tool-card{width:100%;background:#ffffffeb;border:1px solid rgba(148,163,184,.4);border-radius:14px;padding:18px 18px 16px;cursor:pointer;transition:all .3s ease;box-shadow:0 10px 24px #0f172a14;text-align:left;scroll-snap-align:start;min-height:96px;display:flex;align-items:center;position:relative;text-decoration:none}.tool-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #0f172a29;border-color:#2196f3a6}.tool-card:focus-visible{outline:3px solid rgba(33,150,243,.35);outline-offset:3px;border-color:#2196f3cc}.tool-card-badge{position:absolute;top:10px;right:12px;padding:2px 8px;border-radius:999px;background:#22c55e26;color:#16a34a;border:1px solid rgba(34,197,94,.4);font-size:.68rem;font-weight:700;letter-spacing:.08em}.tool-card-content{display:flex;flex-direction:column;gap:6px}.tool-card h3{font-size:18px;font-weight:600;margin:0;color:var(--text-primary)}.tool-card p{font-size:13px;color:var(--text-secondary);margin:0;line-height:1.5}@media (max-width: 768px){.hero{padding:40px 20px 30px}.hero-content{padding:28px 22px}.hero h1{font-size:32px}.hero p{font-size:16px;margin-bottom:30px}.hero-button{padding:14px 36px;font-size:16px}.tools-section{padding:30px 20px 60px}.tools-section h2{font-size:24px}.tools-carousel{padding:0 24px}.tools-track{grid-auto-columns:200px}.tool-card{padding:16px;min-height:100px}}@media (max-width: 480px){.hero-content{padding:24px 18px}.tools-track{grid-auto-columns:180px}.hero h1{font-size:28px}.hero p{font-size:15px}.hero-button{padding:12px 28px;font-size:15px}}html.dark-mode .hero-content{background:linear-gradient(140deg,#42a5f533,#42a5f50d);border-color:#42a5f540}html.dark-mode .tool-card{background:#1e293bbf;border-color:#94a3b82e}html.dark-mode .tool-card-badge{background:#22c55e2e;color:#86efac;border-color:#22c55e73}.wishpool-section{max-width:1100px;margin:40px auto 0;padding:0 20px 40px}.wishpool-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;text-align:center;justify-content:center;position:relative}.wishpool-header h2{margin:0;font-size:1.75rem;color:#0f172a;letter-spacing:.04em;position:relative;display:inline-flex;align-items:center;gap:8px;animation:wishpool-pulse 2.6s ease-in-out infinite}.wishpool-subtitle{margin:18px 0 0;color:#475569;font-size:.95rem;display:block}.wishpool-admin{position:absolute;right:0;top:0;display:inline-flex;align-items:center;gap:10px}.wishpool-admin-pill{background:#10b98126;color:#059669;border:1px solid rgba(16,185,129,.3);font-size:.75rem;padding:4px 8px;border-radius:999px;font-weight:700}.wishpool-admin-exit{border:1px solid rgba(239,68,68,.4);background:#ef444414;color:#b91c1c;border-radius:999px;padding:6px 10px;font-size:.8rem;cursor:pointer}.wishpool-header h2:after{content:"";position:absolute;left:50%;bottom:-14px;width:46px;height:4px;transform:translate(-50%);border-radius:999px;background:linear-gradient(90deg,#2563eb,#22c55e);box-shadow:0 4px 10px #2563eb40}@keyframes wishpool-pulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.wishpool-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:14px;margin:14px 0 16px}.wishpool-form-row{margin-bottom:12px}.wishpool-form-row label{display:block}.wishpool-label{display:block;margin-bottom:6px;color:#4b5563;font-size:.9rem}.wishpool-hint{display:block;margin-top:6px;padding-left:12px;color:#9ca3af;font-size:.8rem}.wishpool-form input,.wishpool-form textarea{width:100%;box-sizing:border-box;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;padding:10px 12px;outline:none}.wishpool-form input::placeholder,.wishpool-form textarea::placeholder{color:#9ca3af}.wishpool-form input:focus,.wishpool-form textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.wishpool-actions{display:flex;justify-content:flex-end}.wishpool-submit{border:none;background:linear-gradient(135deg,#6366f1,#22c55e);color:#0b0f14;font-weight:700;border-radius:10px;padding:10px 14px;cursor:pointer;box-shadow:0 8px 18px #6366f12e}.wishpool-submit:disabled{opacity:.55;cursor:not-allowed}.wishpool-error{border:1px solid rgba(239,68,68,.35);background:#ef444414;border-radius:12px;padding:12px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#991b1b}.wishpool-retry{border:1px solid #fecaca;background:#fff1f2;color:#991b1b;padding:8px 10px;border-radius:10px;cursor:pointer}.wishpool-list{display:grid;gap:12px}.wishpool-card{display:grid;grid-template-columns:1fr auto;gap:14px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;position:relative}.wishpool-card-title{font-size:1.05rem;font-weight:700;color:#111827}.wishpool-card-body{margin-top:8px;color:#374151;line-height:1.45;white-space:pre-wrap}.wishpool-comments{margin-top:14px;padding-top:12px;border-top:1px solid rgba(148,163,184,.25)}.wishpool-comments-header{font-size:.9rem;font-weight:700;color:#1f2937;display:flex;align-items:center;gap:8px}.wishpool-comments-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:#3b82f61f;color:#2563eb;font-size:.72rem}.wishpool-comments-form{display:grid;gap:8px;margin:10px 0 12px}.wishpool-comments-open{border:1px solid rgba(59,130,246,.25);background:#3b82f614;color:#1d4ed8;border-radius:10px;padding:6px 12px;cursor:pointer;font-size:.85rem;margin-top:8px;margin-bottom:10px;justify-self:flex-start}.wishpool-comments-actions{display:flex;gap:8px;align-items:center}.wishpool-comments-nickname,.wishpool-comments-input{width:100%;box-sizing:border-box;border-radius:10px;border:1px solid #d1d5db;background:#fff;color:#111827;padding:8px 10px;outline:none;font-size:.9rem}.wishpool-comments-input{resize:vertical}.wishpool-comments-submit{border:none;background:linear-gradient(135deg,#2563eb,#22c55e);color:#fff;font-weight:600;border-radius:10px;padding:8px 12px;cursor:pointer}.wishpool-comments-submit:disabled{opacity:.6;cursor:not-allowed}.wishpool-comments-cancel{border:1px solid rgba(148,163,184,.4);background:transparent;color:#64748b;border-radius:10px;padding:8px 12px;cursor:pointer;font-size:.85rem}.wishpool-comments-list{display:grid;gap:10px;margin-bottom:8px}.wishpool-comment{display:grid;grid-template-columns:8px 1fr auto;gap:10px;align-items:start}.wishpool-comment-line{width:2px;background:linear-gradient(180deg,#3b82f666,#22c55e4d);border-radius:999px;justify-self:center}.wishpool-comment-body{background:#94a3b81f;border-radius:12px;padding:8px 10px}.wishpool-comment-meta{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#6b7280;flex-wrap:wrap}.wishpool-comment-meta span{color:#94a3b8}.wishpool-comment-text{margin-top:4px;color:#111827;font-size:.9rem;line-height:1.45;white-space:pre-wrap}.wishpool-comments-more{border:1px solid rgba(59,130,246,.25);background:#3b82f614;color:#1d4ed8;border-radius:999px;padding:6px 12px;cursor:pointer;font-size:.85rem}.wishpool-comments-more:disabled{opacity:.6;cursor:not-allowed}.wishpool-card-meta{margin-top:10px;color:#6b7280;font-size:.85rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wishpool-card-meta-main{display:inline-flex;align-items:center;gap:6px}.wishpool-time-edit{border:1px solid rgba(59,130,246,.3);background:#3b82f614;color:#1d4ed8;border-radius:999px;padding:4px 8px;font-size:.72rem;cursor:pointer}.wishpool-time-edit--comment{padding:2px 6px;font-size:.7rem}.wishpool-time-editor{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.wishpool-time-editor.is-comment{margin-top:6px}.wishpool-time-input{border:1px solid #d1d5db;border-radius:8px;padding:6px 8px;font-size:.8rem;background:#fff;color:#111827}.wishpool-time-save{border:none;background:linear-gradient(135deg,#2563eb,#22c55e);color:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:.75rem}.wishpool-time-cancel{border:1px solid rgba(148,163,184,.4);background:transparent;color:#64748b;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:.75rem}.wishpool-card-side{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;gap:12px;min-width:92px;position:absolute;top:14px;right:14px}.wishpool-votes{text-align:right}.wishpool-vote-count{font-size:1.4rem;font-weight:800;color:#111827}.wishpool-vote-label{font-size:.8rem;color:#6b7280;text-transform:uppercase;letter-spacing:.06em}.wishpool-vote-btn{width:100%;border:1px solid #d1d5db;background:#f8fafc;color:#111827;border-radius:10px;padding:10px 14px;min-width:52px;font-size:.95rem;cursor:pointer}.wishpool-vote-btn:disabled{opacity:.55;cursor:not-allowed}.wishpool-card-actions{display:flex;flex-direction:row;gap:8px;width:auto;margin-top:0}.wishpool-edit-votes-btn{border:1px solid rgba(59,130,246,.35);background:#3b82f61f;color:#1d4ed8;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:.85rem}.wishpool-vote-editor{display:flex;align-items:center;gap:8px;margin-top:10px;justify-content:flex-end;flex-wrap:wrap}.wishpool-vote-input{width:90px;border:1px solid #d1d5db;border-radius:8px;padding:6px 8px;font-size:.8rem;background:#fff;color:#111827;text-align:center}.wishpool-vote-save{border:none;background:linear-gradient(135deg,#2563eb,#22c55e);color:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:.75rem}.wishpool-vote-cancel{border:1px solid rgba(148,163,184,.4);background:transparent;color:#64748b;border-radius:8px;padding:6px 10px;cursor:pointer;font-size:.75rem}.wishpool-reset-btn{width:100%;border:1px solid rgba(239,68,68,.4);background:#ef444414;color:#b91c1c;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:.85rem}.wishpool-reset-btn:disabled{opacity:.55;cursor:not-allowed}.wishpool-delete-btn{width:100%;border:1px solid rgba(239,68,68,.6);background:#ef444426;color:#b91c1c;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:.85rem}.wishpool-delete-btn:disabled{opacity:.55;cursor:not-allowed}.wishpool-muted{color:#6b7280;padding:12px 0}.wishpool-card:hover{transform:translateY(-3px);box-shadow:0 10px 18px #0f172a14;border-color:#2563eb40}html.dark-mode .wishpool-header h2{color:#f8fafc;animation:wishpool-pulse 2.6s ease-in-out infinite}html.dark-mode .wishpool-subtitle{color:#f8fafcbf}html.dark-mode .wishpool-form{background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}html.dark-mode .wishpool-label{color:#ffffffbf}html.dark-mode .wishpool-hint{color:#ffffff8c}html.dark-mode .wishpool-form input,html.dark-mode .wishpool-form textarea{border:1px solid rgba(255,255,255,.11);background:#00000040;color:#fff}html.dark-mode .wishpool-form input::placeholder,html.dark-mode .wishpool-form textarea::placeholder{color:#ffffff8c}html.dark-mode .wishpool-form input:focus,html.dark-mode .wishpool-form textarea:focus{border-color:#6366f1cc;box-shadow:0 0 0 3px #6366f140}html.dark-mode .wishpool-error{color:#ffffffe6}html.dark-mode .wishpool-retry{border:1px solid rgba(255,255,255,.18);background:#ffffff0d;color:#fff}html.dark-mode .wishpool-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08)}html.dark-mode .wishpool-card:hover{box-shadow:0 10px 18px #00000059;border-color:#94a3b859}html.dark-mode .wishpool-card-title{color:#fff}html.dark-mode .wishpool-card-body{color:#ffffffc7}html.dark-mode .wishpool-card-meta{color:#ffffff73}html.dark-mode .wishpool-time-edit{border:1px solid rgba(59,130,246,.45);background:#3b82f638;color:#bfdbfe}html.dark-mode .wishpool-time-input{border:1px solid rgba(255,255,255,.12);background:#00000040;color:#fff}html.dark-mode .wishpool-time-cancel{border:1px solid rgba(148,163,184,.4);color:#e2e8f0cc}html.dark-mode .wishpool-comments{border-top:1px solid rgba(148,163,184,.15)}html.dark-mode .wishpool-comments-header{color:#f8fafc}html.dark-mode .wishpool-comments-count{background:#3b82f633;color:#bfdbfe}html.dark-mode .wishpool-comments-open{border:1px solid rgba(59,130,246,.4);background:#3b82f633;color:#bfdbfe}html.dark-mode .wishpool-comments-nickname,html.dark-mode .wishpool-comments-input{border:1px solid rgba(255,255,255,.12);background:#00000040;color:#fff}html.dark-mode .wishpool-comment-body{background:#0f172a99}html.dark-mode .wishpool-comment-text{color:#f8fafc}html.dark-mode .wishpool-comment-badge{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.35)}html.dark-mode .wishpool-comment.is-admin .wishpool-comment-body{background:#05966933;border:1px solid rgba(16,185,129,.4)}html.dark-mode .wishpool-comment-delete{border:1px solid rgba(248,113,113,.5);background:#f8717126;color:#fecaca}html.dark-mode .wishpool-comments-more{border:1px solid rgba(59,130,246,.4);background:#3b82f633;color:#bfdbfe}html.dark-mode .wishpool-comments-cancel{border:1px solid rgba(148,163,184,.4);color:#e2e8f0cc}html.dark-mode .wishpool-vote-count{color:#fff}html.dark-mode .wishpool-vote-label{color:#ffffff8c}html.dark-mode .wishpool-vote-btn{border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#fff}html.dark-mode .wishpool-edit-votes-btn{border:1px solid rgba(59,130,246,.5);background:#3b82f633;color:#bfdbfe}html.dark-mode .wishpool-vote-input{border:1px solid rgba(255,255,255,.12);background:#00000040;color:#fff}html.dark-mode .wishpool-vote-cancel{border:1px solid rgba(148,163,184,.4);color:#e2e8f0cc}html.dark-mode .wishpool-reset-btn{border:1px solid rgba(248,113,113,.4);background:#f8717126;color:#fecaca}html.dark-mode .wishpool-delete-btn{border:1px solid rgba(248,113,113,.5);background:#f8717133;color:#fecaca}html.dark-mode .wishpool-admin-pill{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}html.dark-mode .wishpool-admin-exit{border:1px solid rgba(248,113,113,.4);background:#f871711f;color:#fecaca}html.dark-mode .wishpool-muted{color:#ffffffa6}@media (max-width: 720px){.wishpool-card{grid-template-columns:1fr;padding-top:46px}.wishpool-card-side{position:absolute;top:12px;right:12px;flex-direction:row;align-items:center;justify-content:flex-end;gap:12px;min-width:unset}.wishpool-vote-btn{width:auto}.wishpool-card-actions{flex-direction:row;width:auto}}.wishpool-comment-badge{background:#10b98126;color:#059669;border:1px solid rgba(16,185,129,.3);font-size:.7rem;padding:2px 6px;border-radius:999px;font-weight:700}.wishpool-comment.is-admin .wishpool-comment-body{background:#10b9811f;border:1px solid rgba(16,185,129,.3)}.wishpool-comment-delete{border:1px solid rgba(239,68,68,.4);background:#ef444414;color:#b91c1c;border-radius:10px;padding:6px 10px;cursor:pointer;font-size:.75rem;height:fit-content}.tool-search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}.tool-search-panel{width:100%;max-width:640px;max-height:70vh;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-md);overflow:hidden}.tool-search-input-row{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-color)}.tool-search-icon{display:flex;color:var(--text-secondary);flex-shrink:0}.tool-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text-primary);font-size:16px}.tool-search-input::placeholder{color:var(--text-secondary)}.tool-search-loading{font-size:11px;color:var(--text-secondary);white-space:nowrap}.tool-search-close{flex-shrink:0;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);font-size:11px;padding:3px 8px;border-radius:6px;cursor:pointer}.tool-search-section-label{padding:10px 16px 4px;font-size:12px;color:var(--text-secondary)}.tool-search-list{overflow-y:auto;padding:4px 8px 8px;flex:1}.tool-search-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.tool-search-item.active{background:var(--accent-color);color:#fff}.tool-search-item.active .tool-search-item-desc{color:#ffffffd9}.tool-search-item-title{font-size:14px;font-weight:600}.tool-search-item-desc{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.tool-search-empty{padding:28px 16px;text-align:center;color:var(--text-secondary);font-size:14px}.tool-search-wish-btn{margin-top:8px;padding:8px 16px;border:none;border-radius:8px;background:var(--accent-color);color:#fff;cursor:pointer;font-size:13px}.tool-search-footer{display:flex;gap:16px;padding:8px 16px;border-top:1px solid var(--border-color);font-size:11px;color:var(--text-secondary)}.header-search-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:13px;transition:border-color .15s ease,color .15s ease}.header-search-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.header-search-kbd{font-size:10px;border:1px solid var(--border-color);border-radius:4px;padding:1px 5px;color:var(--text-secondary)}@media (max-width: 768px){.header-search-label,.header-search-kbd{display:none}.header-search-btn{padding:6px 8px}.tool-search-backdrop{padding:8vh 10px 10px}.tool-search-panel{max-height:78vh}}.home-search-trigger{display:flex;align-items:center;gap:10px;width:100%;max-width:520px;margin:18px auto 6px;padding:13px 18px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-primary);color:var(--text-secondary);font-size:15px;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.home-search-trigger:hover{border-color:var(--accent-color);box-shadow:var(--shadow-md)}.home-search-trigger-kbd{margin-left:auto;font-size:11px;border:1px solid var(--border-color);border-radius:4px;padding:2px 6px}@media (max-width: 768px){.home-search-trigger-kbd{display:none}}.version-badge{position:fixed;right:12px;bottom:12px;z-index:9999;font-size:12px;line-height:1;padding:6px 8px;border-radius:999px;color:#ffffffeb;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none;pointer-events:none}.dark-mode .version-badge{background:#ffffff2e}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);min-height:100vh}#root{min-height:100vh}
