@import "https://fonts.googleapis.com/css2?family=Outfit:wght@200;300;400;500&family=Noto+Serif+SC:wght@200;300;400&family=JetBrains+Mono:wght@300;400&display=swap";@import "https://fonts.googleapis.com/css2?family=Space+Mono:wght@400&display=swap";:root{--bg:#0a0a0c;--bg-card:#12121a;--bg-elevated:#1a1a24;--bg-glass:#12121ab3;--text:#e8e4df;--text-muted:#8a8780;--text-faint:#4a4844;--accent:#4fd1c5;--accent-dim:#4fd1c526;--accent-glow:#4fd1c566;--accent-warm:#d4a574;--accent-moss:#7d9a6a;--accent-purple:#9d8cd4;--danger:#e57373;--danger-bg:#e5737314;--success:#81c784;--border:#4fd1c514;--border-bright:#4fd1c533;--border-glow:#4fd1c54d;--shadow:0 2px 20px #0006;--shadow-glow:0 0 30px var(--accent-dim);--shadow-deep:0 8px 40px #0009;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--space-xs:var(--space-2);--space-sm:var(--space-3);--space-md:var(--space-5);--space-lg:var(--space-6);--space-xl:var(--space-7);--space-2xl:var(--space-9);--layout-section-gap:var(--space-7);--layout-component-gap:var(--space-5);--layout-element-gap:var(--space-3);--layout-inner-gap:var(--space-2);--font-display:"Outfit", "Noto Serif SC", sans-serif;--font-body:"Noto Serif SC", "Outfit", sans-serif;--font-mono:"JetBrains Mono", monospace;--font-label:"Space Mono", monospace;--podcast-btn-height:52px;--podcast-btn-radius:6px;--podcast-btn-bg:var(--bg-card);--podcast-btn-border:var(--border-bright);--podcast-btn-icon-size:18px;--podcast-btn-glow:#4fd1c51f;--podcast-btn-save-color:#a8d8ea;--podcast-btn-audio-color:#ffb347;--podcast-btn-generate-color:var(--accent);--podcast-btn-danger:#e57373;--transition:.4s cubic-bezier(.16, 1, .3, 1);--spring:.5s cubic-bezier(.34, 1.56, .64, 1);--list-width:380px;--bottom-nav-height:64px;--header-height:64px}[data-theme=light]{--bg:#faf9f7;--bg-card:#fff;--bg-elevated:#f5f3f0;--bg-glass:#ffffffe6;--text:#2a2824;--text-muted:#6a6660;--text-faint:#a5a09a;--accent:#3a7ca5;--accent-dim:#3a7ca514;--accent-glow:#3a7ca533;--accent-warm:#c49a6c;--accent-moss:#6a8a5a;--accent-purple:#8a7ab5;--danger:#c45c5c;--danger-bg:#c45c5c0a;--success:#6a9a6a;--border:#2a28240f;--border-bright:#2a282426;--border-glow:#3a7ca540;--shadow:0 2px 12px #2a28240f;--shadow-glow:0 0 15px var(--accent-dim);--shadow-deep:0 8px 30px #2a282414}[data-theme=light] body:before{background:radial-gradient(circle at center, var(--border) .5px, transparent .5px);opacity:.4;background-size:32px 32px}[data-theme=light] body:after{background:radial-gradient(80% 50% at 50% 0,#3a7ca50a 0%,#0000 50%),radial-gradient(60% 40% at 100% 100%,#c49a6c0d 0%,#0000 40%)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-weight:300;line-height:1.8;overflow-x:hidden}body:before{content:"";background: radial-gradient(circle at center, var(--border) 1px, transparent 1px);opacity:.5;pointer-events:none;z-index:-2;background-size:40px 40px;position:fixed;inset:0}body:after{content:"";background: radial-gradient(ellipse 80% 50% at 50% 0%, var(--accent-dim) 0%, transparent 50%), radial-gradient(ellipse 60% 40% at 100% 100%, #9d8cd40d 0%, transparent 40%);pointer-events:none;z-index:-1;position:fixed;inset:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;font-weight:400;line-height:1.3}.app-header{padding:0 var(--space-lg);height:var(--header-height);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:100;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:relative}.app-header:after{content:"";background:linear-gradient(90deg, transparent, var(--accent-glow) 20%, var(--accent) 50%, var(--accent-glow) 80%, transparent);opacity:.6;height:1px;position:absolute;bottom:0;left:10%;right:10%}.app-header h1{font-family:var(--font-display);letter-spacing:.3em;color:var(--text);font-size:18px;font-weight:300;position:relative}.app-header h1:before{content:"◆";color:var(--accent);opacity:.8;font-size:8px;animation:3s ease-in-out infinite pulse-glow;position:absolute;left:-20px}.page>header{padding:0 0 var(--space-lg);margin-bottom:var(--space-md);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex;position:relative}.page>header:after{content:"";background:var(--accent);width:60px;height:1px;box-shadow:0 0 10px var(--accent-glow);position:absolute;bottom:-1px;left:0}.page>header h1{font-family:var(--font-display);letter-spacing:.2em;color:var(--text);align-items:center;gap:10px;font-size:20px;font-weight:300;display:flex}.page>header h1 svg{color:var(--accent);animation:3s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{opacity:.4;text-shadow:none}50%{opacity:1;text-shadow:0 0 10px var(--accent)}}header button{border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-display);letter-spacing:.1em;cursor:pointer;transition:var(--transition);background:0 0;border-radius:2px;padding:6px 12px;font-size:11px;font-weight:300;position:relative;overflow:hidden}header button.danger:hover{color:var(--danger);background:var(--danger-bg);border-color:#e573734d}.header-nav{align-items:center;gap:var(--space-md);display:flex}.user-info{background:var(--bg-elevated);border:1px solid var(--border);cursor:default;transition:var(--transition);border-radius:20px;align-items:center;gap:8px;padding:4px 8px 4px 4px;display:flex}.user-info:hover{border-color:var(--border-bright)}.user-avatar{background:linear-gradient(135deg, var(--accent), var(--accent-purple));width:26px;height:26px;color:var(--bg);font-family:var(--font-display);letter-spacing:.02em;box-shadow:0 0 8px var(--accent-dim);border-radius:50%;justify-content:center;align-items:center;font-size:10px;font-weight:500;display:flex}.user-name{font-family:var(--font-display);color:var(--text-muted);letter-spacing:.03em;font-size:12px;font-weight:300}.user-info-clickable{cursor:pointer}.user-menu{position:relative}.user-dropdown-backdrop{z-index:99;position:fixed;inset:0}.user-dropdown{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-deep);z-index:100;min-width:140px;margin-top:8px;position:absolute;top:100%;right:0}.user-dropdown-item{width:100%;color:var(--text-muted);font-family:var(--font-display);cursor:pointer;text-align:left;letter-spacing:.05em;transition:var(--transition);background:0 0;border:none;padding:10px 16px;font-size:12px;display:block}.user-dropdown-item:hover{background:var(--bg-elevated);color:var(--accent)}.user-dropdown-item.user-dropdown-item-danger{border-top:1px solid var(--border)}.user-dropdown-item.user-dropdown-item-danger:hover{background:var(--danger-bg);color:var(--danger)}.theme-toggle{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;width:32px;height:32px;transition:var(--transition);color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:16px;display:flex}.theme-toggle:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}header button{border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-display);letter-spacing:.1em;cursor:pointer;padding:var(--space-xs) var(--space-sm);transition:var(--transition);background:0 0;font-size:12px;font-weight:300;position:relative;overflow:hidden}header button:before{content:"";background:var(--accent-dim);opacity:0;transition:var(--transition);position:absolute;inset:0}header button:hover{color:var(--accent);border-color:var(--border-bright)}header button:hover:before{opacity:1}header button.danger:hover{color:var(--danger);border-color:#e573734d}.idea-list{flex-direction:column;display:flex}.idea-item{padding:var(--space-md) var(--space-md);border-bottom:1px solid var(--border);color:inherit;cursor:pointer;transition:var(--transition);background:0 0;text-decoration:none;display:block;position:relative}.idea-item:before{content:"";background:var(--accent);width:2px;transition:var(--spring);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.idea-item:hover{background:var(--bg-elevated)}.idea-item:hover:before{transform:scaleY(1)}.idea-item.selected{background:var(--bg-elevated);border-left:2px solid var(--accent)}.idea-item h3{font-family:var(--font-display);color:var(--text);letter-spacing:.02em;margin-bottom:4px;font-size:15px;font-weight:400}.idea-item .summary{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.idea-item time{color:var(--text-faint);letter-spacing:.08em;font-size:11px;font-family:var(--font-mono);font-weight:300}.bottom-nav{height:var(--bottom-nav-height);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border);z-index:100;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.bottom-nav:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-glow) 50%, transparent);height:1px;position:absolute;top:0;left:20%;right:20%}.bottom-nav-inner{align-items:center;gap:var(--space-lg);display:flex}.bottom-nav-item{padding:8px var(--space-md);color:var(--text-muted);cursor:pointer;transition:var(--transition);font-family:var(--font-display);background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:3px;display:flex;position:relative}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--accent);border-color:var(--border);background:var(--accent-dim)}.bottom-nav-label{letter-spacing:.12em;font-size:10px;font-weight:300}.bottom-nav-new{cursor:pointer;background:0 0;border:none}.bottom-nav-new-icon{background:linear-gradient(135deg, var(--accent), var(--accent-purple));width:48px;height:48px;color:var(--bg);transition:var(--spring);box-shadow:0 0 20px var(--accent-glow), inset 0 1px 0 #fff3;border-radius:50%;justify-content:center;align-items:center;font-size:24px;font-weight:300;line-height:1;display:flex;position:relative}.bottom-nav-new-icon:before{content:"";border:1px solid var(--accent);opacity:0;border-radius:50%;animation:2s ease-out infinite ring-pulse;position:absolute;inset:-4px}@keyframes ring-pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}.bottom-nav-new:hover .bottom-nav-new-icon{box-shadow:0 0 40px var(--accent-glow), inset 0 1px 0 #ffffff4d;transform:scale(1.1)}.page{max-width:720px;padding:var(--space-xl) var(--space-md) var(--space-2xl);min-height:100vh;margin:0 auto;animation:.6s cubic-bezier(.16,1,.3,1) both pageIn;position:relative}@keyframes pageIn{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.page-detail{background:var(--bg);z-index:50;flex-direction:column;animation:.5s cubic-bezier(.16,1,.3,1) detailIn;display:flex;position:fixed;inset:0}@keyframes detailIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.page-detail-header{padding:0 var(--space-lg);background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:56px;display:flex}.header-back{color:var(--text-muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;transition:all .2s;display:flex}.header-back:hover{color:var(--text);border-color:var(--accent)}.header-nav{gap:8px;display:flex}.header-nav button{align-items:center;gap:6px;display:flex}.detail-scroll{flex:1;overflow-y:auto}.detail-layout{height:100%;display:flex}.detail-article{min-width:240px;padding:var(--space-xl) var(--space-lg) var(--space-2xl);border-right:1px solid var(--border);flex:0 0 280px;overflow-y:auto}.detail-header{margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--border);position:relative}.detail-header:after{content:"";background:var(--accent);width:40px;height:1px;position:absolute;bottom:-1px;left:0}.detail-edit{gap:var(--space-md);flex-direction:column;display:flex}.detail-edit-title{font-family:var(--font-display);color:var(--text);border:none;border-bottom:1px solid var(--border-bright);padding:var(--space-sm) 0;width:100%;transition:var(--transition);background:0 0;outline:none;font-size:24px;font-weight:400}.detail-edit-title:focus{border-bottom-color:var(--accent);box-shadow:0 1px 0 var(--accent-dim)}.detail-edit-content{color:var(--text);border:1px solid var(--border);padding:var(--space-md);resize:vertical;width:100%;min-height:200px;transition:var(--transition);background:0 0;border-radius:4px;outline:none;font-family:inherit;font-size:14px;line-height:1.8}.detail-edit-content:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.detail-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin-bottom:var(--space-sm);font-size:26px;font-weight:400;line-height:1.3}.detail-meta-line{color:var(--text-faint);letter-spacing:.05em;font-size:12px;font-family:var(--font-mono);align-items:center;gap:8px;display:flex}.detail-dot{color:var(--accent);opacity:.4}.detail-version{color:var(--accent-moss);font-style:italic}.detail-body{margin-bottom:var(--space-xl)}.detail-content{white-space:pre-wrap;color:var(--text-muted);font-size:14px;line-height:2}.detail-content-empty{color:var(--text-faint);flex-direction:column;align-items:center;gap:8px;padding:48px;font-style:normal;display:flex}.detail-content-empty svg{opacity:.2}.detail-media{border-top:1px solid var(--border);padding-top:var(--space-lg)}.detail-media-label{color:var(--text-faint);letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-sm);font-size:10px}.detail-media-grid{gap:var(--space-sm);flex-wrap:wrap;display:flex}.detail-media-item{border:1px solid var(--border);max-width:100%;transition:var(--transition);overflow:hidden}.detail-media-item:hover{border-color:var(--border-bright);box-shadow:var(--shadow-glow)}.detail-media-item img,.detail-media-item video{max-width:100%;display:block}.detail-media-item audio{width:100%;padding:var(--space-sm)}.tab-label{letter-spacing:.1em;color:var(--text-muted);cursor:pointer;padding:var(--space-xs) var(--space-sm);transition:var(--transition);font-size:12px;font-weight:300;position:relative}.tab-label:after{content:"";background:var(--accent);width:0;height:1px;transition:var(--transition);position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.tab-label:hover{color:var(--accent)}.tab-label:hover:after{width:60%}.tab-label.tab-active{color:var(--accent)}.tab-label.tab-active:after{width:60%;box-shadow:0 0 8px var(--accent-glow)}.workspace-container{min-width:0;padding:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.toolbox-panel{border-left:1px solid var(--border);background:var(--bg-secondary);flex-direction:column;flex-shrink:0;width:340px;min-width:300px;display:flex;overflow:hidden}.toolbox-tabs{border-bottom:1px solid var(--border);background:var(--bg-card);flex-shrink:0;display:flex}.toolbox-tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;padding:12px 8px;font-size:12px;transition:all .2s;display:flex}.toolbox-tab:hover{color:var(--text);background:var(--bg-hover)}.toolbox-tab.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--bg)}.toolbox-body{flex-direction:column;flex:1;display:flex;overflow:hidden}.source-actions{flex-direction:column;gap:8px;padding:12px;display:flex}.source-btn{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:8px;align-items:center;gap:12px;padding:14px 16px;transition:all .2s;display:flex}.source-btn:hover:not(:disabled){border-color:var(--accent);background:var(--bg-hover)}.source-btn:disabled{opacity:.4;cursor:not-allowed}.source-btn-icon{color:var(--accent);text-align:center;width:24px;font-size:18px}.source-btn-text{color:var(--text);font-size:13px}.chat-container{background:var(--bg);flex-direction:column;height:100%;display:flex}.chat-messages{flex:1;min-height:0;padding:16px;overflow-y:auto}.chat-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;padding:16px;display:flex}.chat-empty-icon{color:var(--accent);opacity:.5;margin-bottom:8px}.chat-empty p{color:var(--text);margin:0;font-size:15px;font-weight:500}.chat-empty small{color:var(--text-muted);max-width:200px;font-size:12px}.chat-start-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:24px;align-items:center;gap:8px;padding:12px 24px;font-size:15px;font-weight:500;transition:all .2s;display:flex;box-shadow:0 2px 8px #6366f14d}.chat-start-btn:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 12px #6366f166}.chat-start-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.chat-list{flex-direction:column;gap:12px;display:flex}.chat-item{display:flex}.chat-item-user{justify-content:flex-end}.chat-item-assistant{justify-content:flex-start}.chat-bubble{border-radius:16px;max-width:85%;padding:12px 16px;font-size:13px;line-height:1.6}.chat-item-user .chat-bubble{background:linear-gradient(135deg, var(--accent), #3ba89f);color:#fff;border-bottom-right-radius:4px}.chat-item-assistant .chat-bubble{background:var(--bg-card);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:4px}.chat-content{white-space:pre-wrap;word-break:break-word}.chat-content code{background:#00000026;border-radius:4px;padding:2px 6px;font-size:12px}.chat-item-user .chat-content code{background:#fff3}.chat-content pre{background:var(--bg-hover);border-radius:8px;margin:8px 0;padding:10px;font-size:12px;overflow-x:auto}.chat-loading{align-items:center;gap:4px;padding:4px 0;display:flex}.chat-loading span{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite chat-bounce}.chat-loading span:nth-child(2){animation-delay:.1s}.chat-loading span:nth-child(3){animation-delay:.2s}@keyframes chat-bounce{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}.chat-footer{background:var(--bg-card);border-top:1px solid var(--border);flex-shrink:0}.chat-input-wrap{align-items:flex-end;gap:8px;padding:12px 16px 8px;display:flex}.chat-input{color:var(--text);background:var(--bg);border:1px solid var(--border);resize:none;border-radius:12px;flex:1;min-height:44px;max-height:120px;padding:12px 16px;font-family:inherit;font-size:14px;line-height:1.5;transition:all .2s}.chat-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4fd1c51a}.chat-input::placeholder{color:var(--text-faint)}.chat-send-btn{background:linear-gradient(135deg, var(--accent), #3ba89f);color:#fff;cursor:pointer;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex}.chat-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #4fd1c54d}.chat-send-btn:active{transform:scale(.95)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.chat-clear-btn{border:1px solid var(--border);width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.chat-clear-btn:hover{border-color:var(--accent-danger,#e57373);color:var(--accent-danger,#e57373);background:#e573731a}.chat-actions{flex-wrap:wrap;gap:8px;padding:12px 16px 8px;display:flex}.chat-download-row{padding:0 16px 14px}.chat-download-row .chat-download-btn{width:100%;height:36px;color:var(--accent-warm);background:#d4a57414;border-color:#d4a57438;font-weight:500}.chat-download-row .chat-download-btn:hover:not(:disabled){border-color:var(--accent-warm);color:var(--accent-warm);background:#d4a5742e;box-shadow:0 0 12px #d4a5742e}.chat-download-row .chat-download-btn:disabled{opacity:.7}.chat-actions .action-btn,.chat-actions .action-btn.action-primary,.chat-actions .action-btn.action-primary.loading{height:36px;min-height:36px;max-height:36px;line-height:1}.action-btn{height:36px;min-height:36px;max-height:36px;color:var(--text);background:var(--bg);border:1px solid var(--border);cursor:pointer;white-space:nowrap;box-sizing:border-box;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:13px;line-height:1;transition:all .2s;display:flex;overflow:hidden}.action-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--bg-hover)}.action-btn:disabled{opacity:.4;cursor:not-allowed}.action-btn.action-primary{background:linear-gradient(135deg, var(--accent-dim), #4fd1c526);border-color:var(--accent);color:var(--accent);height:36px;font-weight:500}.action-btn.action-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--accent), #3ba89f);color:#fff}.action-btn.action-primary.loading{background:var(--accent-dim);height:36px!important;min-height:36px!important;max-height:36px!important;padding:0 16px!important;line-height:1!important}.action-btn .spin{flex-shrink:0;width:14px;height:14px;animation:1s linear infinite spin;display:inline-block}.action-btn>svg,.action-btn .btn-icon{flex-shrink:0;width:14px;height:14px;display:inline-block}.action-btn .btn-icon{flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;display:inline-flex}.action-btn .btn-icon>svg{width:14px;height:14px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.action-btn.action-clear{color:var(--text-muted);margin-left:auto}.action-btn.action-clear:hover{color:#e74c3c;border-color:#e74c3c}.toolbox-empty{color:var(--text-faint);flex:1;justify-content:center;align-items:center;font-size:13px;display:flex}.tool-actions{border-bottom:1px solid var(--border);flex-shrink:0;gap:6px;padding:10px 12px;display:flex}.tool-btn{color:var(--text);background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-size:12px;transition:all .2s;display:flex}.tool-btn:hover{border-color:var(--accent);color:var(--accent)}.tool-btn:disabled{opacity:.4;cursor:not-allowed}.tool-btn.primary{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.tool-btn.primary:hover{background:var(--accent);color:var(--bg)}.tool-btn .spin{animation:1s linear infinite spin}.toolbox-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.ppt-toolbox-chat{flex-direction:column;height:100%;display:flex;overflow:hidden}.ppt-toolbox-theme-row{border-bottom:1px solid var(--border);flex-shrink:0;padding:8px 12px}.ppt-toolbox-theme-row .wabi-select{width:100%;padding:6px 8px;font-size:12px}.ppt-chat-root{flex-direction:column;height:100%;display:flex;overflow:hidden}.ppt-chat-messages{flex-direction:column;flex:1;padding:10px 12px;display:flex;overflow-y:auto}.ppt-chat-empty{text-align:center;height:100%;padding:var(--space-lg);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.ppt-chat-empty div{font-size:24px}.ppt-chat-empty p{color:var(--text);margin:0;font-size:13px;font-weight:600}.ppt-chat-empty small{color:var(--text-3);font-size:11px;line-height:1.5}.ppt-chat-row{margin-bottom:8px;display:flex}.ppt-chat-row-user{justify-content:flex-end}.ppt-chat-row-assistant{justify-content:flex-start}.ppt-chat-bubble{white-space:pre-wrap;word-break:break-word;border-radius:10px;flex-direction:column;gap:3px;max-width:85%;padding:8px 12px;font-size:12px;line-height:1.55;display:flex}.ppt-chat-row-user .ppt-chat-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:3px}.ppt-chat-row-assistant .ppt-chat-bubble{background:var(--bg-soft);color:var(--text);border:1px solid var(--border);border-bottom-left-radius:3px}.ppt-chat-text{white-space:pre-wrap;word-break:break-word}.ppt-chat-text h1,.ppt-chat-text h2,.ppt-chat-text h3{color:inherit;margin:6px 0 4px;font-size:13px;font-weight:700}.ppt-chat-text p{margin:4px 0;font-size:12px;line-height:1.55}.ppt-chat-text table{border-collapse:collapse;width:100%;margin:6px 0;font-size:11px}.ppt-chat-text th,.ppt-chat-text td{border:1px solid var(--border);text-align:left;padding:3px 6px}.ppt-chat-text th{background:var(--bg-soft);font-weight:600}.ppt-chat-text ul,.ppt-chat-text ol{margin:4px 0;padding-left:18px;font-size:12px}.ppt-chat-text li{margin:2px 0;line-height:1.5}.ppt-chat-text pre{background:#00000026;border-radius:4px;margin:4px 0;padding:6px 8px;font-size:10px;overflow-x:auto}.ppt-chat-text code{background:#0000001f;border-radius:3px;padding:1px 4px;font-size:11px}.ppt-chat-text pre code{background:0 0;padding:0}.ppt-chat-text strong{font-weight:700}.ppt-chat-text em{font-style:italic}.ppt-chat-text blockquote{border-left:3px solid var(--color-primary);opacity:.9;margin:4px 0;padding:2px 8px;font-size:12px}.ppt-chat-time{opacity:.5;align-self:flex-end;font-size:9px}.ppt-chat-row-user .ppt-chat-time{color:#ffffffb3}.ppt-chat-bubble-loading{align-items:center;gap:4px;padding:10px 14px;display:flex}.ppt-chat-bubble-loading span{background:var(--text-3);border-radius:50%;width:5px;height:5px;animation:1.2s ease-in-out infinite ppt-bounce}.ppt-chat-bubble-loading span:first-child{animation-delay:0s}.ppt-chat-bubble-loading span:nth-child(2){animation-delay:.2s}.ppt-chat-bubble-loading span:nth-child(3){animation-delay:.4s}@keyframes ppt-bounce{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.ppt-chat-confirm{border-top:1px solid var(--border);background:var(--bg);flex-shrink:0;padding:12px}.ppt-chat-confirm-hint{color:var(--text-3);margin-bottom:8px;font-size:11px}.ppt-chat-confirm-btns{flex-wrap:wrap;gap:6px;display:flex}.podcast-action-bar{background:var(--bg);border-top:1px solid var(--border);flex-shrink:0;gap:6px;padding:10px;display:flex}.podcast-action-bar .action-btn{border-radius:var(--podcast-btn-radius);border:1px solid var(--podcast-btn-border);background:var(--podcast-btn-bg);height:36px;color:var(--text-muted);font-family:var(--font-label);letter-spacing:.08em;cursor:pointer;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:11px;transition:all .2s;display:flex}.podcast-action-bar .action-btn:hover{background:var(--bg-elevated);border-color:currentColor}.podcast-action-bar .action-btn:disabled{opacity:.35;cursor:not-allowed}.podcast-action-bar .action-btn .btn-label{white-space:nowrap}.podcast-action-bar .action-btn.btn-save{color:var(--podcast-btn-save-color)}.podcast-action-bar .action-btn.btn-audio{color:var(--podcast-btn-audio-color)}.podcast-action-bar .action-btn.btn-generate{background:linear-gradient(135deg, var(--accent-dim), #4fd1c514);color:var(--podcast-btn-generate-color);border-color:var(--accent);flex:2;font-weight:500}.podcast-action-bar .action-btn.loading .btn-label{opacity:.6}.podcast-action-bar .action-btn .loading-dot{background:currentColor;border-radius:50%;width:4px;height:4px;animation:1s ease-in-out infinite podcast-pulse}.podcast-action-bar .action-btn .loading-dot:nth-child(2){animation-delay:.15s}.podcast-action-bar .action-btn .loading-dot:nth-child(3){animation-delay:.3s}@keyframes podcast-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.podcast-action-bar .action-btn.btn-clear{color:var(--text-faint);background:0 0;border-color:#0000;flex:none;padding:0 16px;font-size:10px}.ppt-chat-input-row{border-top:1px solid var(--border);background:var(--bg);flex-shrink:0;align-items:flex-end;gap:6px;padding:8px 10px;display:flex}.ppt-chat-input{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);resize:none;border-radius:8px;outline:none;flex:1;min-height:36px;max-height:90px;padding:8px 10px;font-family:inherit;font-size:12px;line-height:1.4;transition:border-color .15s}.ppt-chat-input:focus{border-color:var(--color-primary)}.ppt-chat-input::placeholder{color:var(--text-3)}.ppt-chat-send{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:all .15s;display:flex}.ppt-chat-send:hover:not(:disabled){background:var(--color-primary-dark);transform:scale(1.05)}.ppt-chat-send:disabled{opacity:.4;cursor:not-allowed}.workspace-empty-hint{height:100%;color:var(--text-secondary);justify-content:center;align-items:center;font-size:14px;display:flex}@media (width<=1200px){.toolbox-panel{flex-basis:300px;min-width:280px}}form{gap:var(--space-md);padding-top:var(--space-lg);flex-direction:column;display:flex}.form-title{font-family:var(--font-display);text-align:center;margin-bottom:var(--space-xl);letter-spacing:.2em;color:var(--text);font-size:32px;font-weight:200;position:relative}.form-title:after{content:"";background:var(--accent);width:40px;height:1px;margin:var(--space-md) auto 0;box-shadow:0 0 10px var(--accent-glow);display:block}input,textarea{width:100%;padding:var(--space-sm) var(--space-md);border:none;border-bottom:1px solid var(--border-bright);color:var(--text);transition:var(--transition);font-size:14px;font-weight:300;font-family:var(--font-display);letter-spacing:.02em;background:0 0}input:focus,textarea:focus{border-bottom-color:var(--accent);box-shadow:0 1px 0 var(--accent-dim);outline:none}input::placeholder,textarea::placeholder{color:var(--text-faint);font-style:italic}textarea{resize:vertical;min-height:160px;line-height:1.8}label{color:var(--text-faint);letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--space-xs);font-size:11px;font-family:var(--font-mono);display:block}.btn{font-family:var(--font-display);letter-spacing:.15em;cursor:pointer;transition:var(--transition);border:1px solid #0000;justify-content:center;align-items:center;padding:14px 28px;font-size:12px;font-weight:400;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-purple));color:var(--bg);box-shadow:0 4px 20px var(--accent-dim);border:none}.btn-primary:hover:not(:disabled){box-shadow:0 8px 30px var(--accent-glow);transform:translateY(-2px)}.btn-ghost{color:var(--text-muted);border-color:var(--border);background:0 0}.btn-ghost:hover{background:var(--bg-elevated);color:var(--accent);border-color:var(--border-bright)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.fab{background:linear-gradient(135deg, var(--accent), var(--accent-purple));width:52px;height:52px;color:var(--bg);box-shadow:0 4px 20px var(--accent-glow), inset 0 1px 0 #fff3;transition:var(--spring);z-index:100;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex;position:fixed;bottom:32px;right:32px}.fab:hover{box-shadow:0 8px 40px var(--accent-glow), inset 0 1px 0 #ffffff4d;transform:scale(1.1)translateY(-2px)}.empty-state{color:var(--text-faint);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:64px 24px;display:flex}.empty-state svg{opacity:.3}.empty-state p{color:var(--text-muted);margin:0;font-size:16px}.empty-state span{color:var(--text-faint);font-size:13px}.empty,.loading{text-align:center;color:var(--text-faint);padding:var(--space-2xl) 0;letter-spacing:.1em;font-size:13px}.error{color:var(--danger);text-align:center;letter-spacing:.05em;padding:var(--space-sm);background:var(--danger-bg);border:1px solid #e5737333;border-radius:4px;font-size:12px}.link{text-align:center;color:var(--text-muted);letter-spacing:.05em;cursor:pointer;padding:var(--space-sm);transition:var(--transition);font-size:13px;font-family:var(--font-mono);display:block}.link:hover{color:var(--accent)}.wabi-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#0a0a0cd9;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.wabi-overlay-dark{background:#050508f2}.wabi-modal{background:var(--bg-card);width:85%;max-width:960px;max-height:88vh;box-shadow:var(--shadow-deep);border:1px solid var(--border);flex-direction:column;animation:.4s cubic-bezier(.16,1,.3,1) modalIn;display:flex;overflow:hidden}.wabi-modal-fullscreen{width:95vw;max-width:95vw;height:90vh;max-height:90vh}.wabi-modal-confirm{width:90%;max-width:400px}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.wabi-header{padding:var(--space-7) var(--space-9) var(--space-5);background:linear-gradient(to bottom, var(--bg-elevated), transparent);border-bottom:1px solid var(--border);position:relative}.wabi-header-line{bottom:0;left:var(--space-9);right:var(--space-9);background:linear-gradient(to right, transparent, var(--border-bright) 20%, var(--border-bright) 80%, transparent);height:1px;position:absolute}.wabi-header h2{font-family:var(--font-display);letter-spacing:.15em;color:var(--text);text-align:center;font-size:18px;font-weight:300}.wabi-close{top:var(--space-5);right:var(--space-6);border:1px solid var(--border);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:var(--transition);background:0 0;border-radius:2px;justify-content:center;align-items:center;font-size:16px;font-weight:300;display:flex;position:absolute}.wabi-close:hover{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.wabi-body{padding:var(--space-7) var(--space-9) var(--space-9);flex:1;overflow-y:auto}.wabi-content{gap:var(--space-5);flex-direction:column;display:flex}.wabi-section label{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-3);font-size:10px;font-family:var(--font-mono);display:block}.wabi-title{font-family:var(--font-display);color:var(--text);letter-spacing:.03em;padding:var(--space-2) 0;font-size:18px;font-weight:300}.wabi-divider{background:linear-gradient(to right, transparent, var(--border) 15%, var(--border) 85%, transparent);height:1px;margin:4px 0}.wabi-input-row{gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.wabi-input-row input{padding:var(--space-3) var(--space-4);border:1px solid var(--border);background:var(--bg);font-size:13px;font-family:var(--font-display);color:var(--text);transition:var(--transition);border-radius:2px;flex:1}.wabi-input-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.wabi-empty{padding:var(--space-5);text-align:center;color:var(--text-faint);letter-spacing:.1em;background:var(--bg);border:1px solid var(--border);border-radius:2px;font-size:12px;font-style:italic}.wabi-list{gap:var(--space-2);flex-direction:column;max-height:160px;margin-bottom:14px;display:flex;overflow-y:auto}.wabi-item{padding:var(--space-3) var(--space-4);background:var(--bg);border:1px solid var(--border);transition:var(--transition);justify-content:space-between;align-items:center;display:flex}.wabi-item:hover{background:var(--bg-elevated);border-color:var(--border-bright)}.wabi-item-info{gap:var(--space-1);flex-direction:column;flex:1;display:flex;overflow:hidden}.wabi-item-name{color:var(--text);font-size:13px}.wabi-item-url{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-family:var(--font-mono);text-decoration:none;overflow:hidden}.wabi-item-url:hover{text-decoration:underline}.wabi-item-actions{gap:6px;display:flex}.wabi-btn{font-family:var(--font-display);letter-spacing:.1em;cursor:pointer;transition:var(--transition);border:1px solid var(--border);color:var(--text-muted);background:0 0;justify-content:center;align-items:center;padding:10px 18px;font-size:11px;font-weight:400;display:inline-flex}.wabi-btn:hover:not(:disabled){background:var(--bg-elevated);color:var(--accent);border-color:var(--accent)}.wabi-btn:disabled{opacity:.4;cursor:not-allowed}.wabi-btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-purple));color:var(--bg);border:none}.wabi-btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--accent), var(--accent));color:var(--bg);box-shadow:0 4px 20px var(--accent-dim)}.wabi-btn-secondary{background:var(--bg);width:100%;color:var(--text-muted);border-color:var(--border-bright);padding:12px}.wabi-btn-ghost{background:0 0;border-color:#0000}.wabi-btn-icon{padding:6px 10px;font-size:10px}.wabi-btn-danger:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-bg)}.wabi-preview{background:var(--bg);border:1px solid var(--border);border-radius:2px;min-height:140px}.wabi-graph{height:140px;position:relative}.wabi-graph iframe{background:var(--bg);border:none;width:100%;height:100%}.wabi-graph-expand{opacity:0;transition:var(--transition);padding:4px 10px;font-size:10px;position:absolute;top:6px;right:6px}.wabi-graph:hover .wabi-graph-expand{opacity:1}.wabi-progress label{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-family:var(--font-mono);margin-bottom:12px;display:block}.wabi-progress-list{flex-direction:column;gap:10px;display:flex}.wabi-progress-item{color:var(--text);align-items:center;gap:10px;font-size:13px;display:flex}.wabi-progress-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 0 0 var(--accent-glow)}50%{opacity:.6;box-shadow:0 0 0 4px #0000}}.wabi-result label{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-family:var(--font-mono);margin-bottom:12px;display:block}.wabi-result-content{background:var(--bg);border:1px solid var(--border);max-height:240px;padding:16px;overflow-y:auto}.wabi-result-content h3{font-family:var(--font-display);color:var(--text);margin-bottom:10px;font-size:15px;font-weight:400}.wabi-result-content pre{color:var(--text-muted);white-space:pre-wrap;font-size:12px;line-height:1.7;font-family:var(--font-mono)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg, var(--bg-elevated) 25%, var(--bg-card) 50%, var(--bg-elevated) 75%);background-size:200% 100%;border-radius:2px;animation:1.5s ease-in-out infinite shimmer}.skeleton-card{padding:var(--space-md);background:var(--bg-card);border-bottom:1px solid var(--border)}.skeleton-card .skeleton-line{height:12px;margin-bottom:var(--space-xs);width:70%}.skeleton-card .skeleton-line:last-child{width:40%;height:8px;margin-bottom:0}.skeleton-detail{padding:var(--space-lg) 0}.skeleton-detail .skeleton-line{height:14px;margin-bottom:var(--space-sm)}.skeleton-detail .skeleton-line:first-child{width:55%;height:22px;margin-bottom:var(--space-md)}.skeleton-detail .skeleton-line:nth-child(3){width:30%;height:10px;margin-bottom:var(--space-lg)}.toast-container{top:var(--space-lg);z-index:9999;gap:var(--space-xs);pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-sm);background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-deep);letter-spacing:.03em;color:var(--text);pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:center;min-width:180px;padding:12px 20px;font-size:13px;animation:.4s cubic-bezier(.16,1,.3,1) forwards toastIn;display:flex}.toast-icon{flex-shrink:0;font-size:14px}.toast-success .toast-icon{color:var(--success)}.toast-error .toast-icon{color:var(--danger)}.toast-info .toast-icon{color:var(--accent)}@keyframes toastIn{0%{opacity:0;transform:translateY(-16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.ptr-indicator{height:60px;color:var(--text-faint);letter-spacing:.12em;font-size:11px;font-family:var(--font-mono);z-index:200;justify-content:center;align-items:center;transition:transform .3s;display:flex;position:absolute;top:-60px;left:0;right:0}.ptr-indicator.ptr-ready{color:var(--accent)}.ptr-indicator .ptr-spinner{border:1px solid var(--border);border-top-color:var(--accent);width:14px;height:14px;margin-right:var(--space-sm);border-radius:50%;animation:.8s linear infinite spin}.wabi-confirm-text{color:var(--text-muted);margin:0 0 var(--space-lg);text-align:center;font-size:14px;line-height:1.7}.wabi-confirm-actions{gap:var(--space-sm);justify-content:center;display:flex}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}::selection{background:var(--accent-dim);color:var(--text)}.sources-tab{padding-top:var(--space-lg);flex-direction:column;flex:1;min-height:0;display:flex}.sources-actions .wabi-btn-secondary{flex-shrink:0}.sources-input-row{margin-bottom:var(--space-md);gap:10px;display:flex}.sources-input-row input{border:1px solid var(--border);background:var(--bg);font-size:13px;font-family:var(--font-display);color:var(--text);flex:1;padding:10px 12px}.sources-input-row input:focus{border-color:var(--accent);outline:none}.sources-list{margin-bottom:var(--space-md);flex-direction:column;flex:1;gap:6px;min-height:0;display:flex;overflow-y:auto}.sources-item{background:var(--bg);border:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.sources-item-thumb{object-fit:cover;background:var(--bg-secondary,#0000000a);border-radius:4px;flex-shrink:0;width:56px;height:56px}.sources-item-info{flex-direction:column;flex:1;gap:2px;min-height:0;display:flex;overflow:hidden}.sources-item-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.sources-item-name-wrap{white-space:normal;line-height:1.5}.sources-item-url{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-family:var(--font-mono);display:block;overflow:hidden}.transcribing-item{border:1px dashed var(--accent-color);opacity:.8}.transcribing-spinner{color:var(--accent-color);font-size:18px;animation:1.2s linear infinite spin;display:inline-block}.sources-item-snippet{color:var(--text-faint);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.4;display:-webkit-box;overflow:hidden}.sources-item-actions{flex-shrink:0;gap:6px;display:flex}.sources-preview-content{background:var(--bg);border:1px solid var(--border);white-space:pre-wrap;max-height:360px;padding:16px;font-size:12px;line-height:1.8;overflow-y:auto}.sources-preview-image{background:var(--bg);border:1px solid var(--border);justify-content:center;align-items:center;max-height:480px;padding:16px;display:flex;overflow:auto}.sources-preview-image img{object-fit:contain;max-width:100%;max-height:100%}.sources-actions{gap:var(--space-sm);padding-top:var(--space-md);margin-top:auto;display:flex}.sources-actions .wabi-btn-primary{flex:1}.sources-actions-three{gap:var(--space-sm);padding-top:var(--space-md);margin-top:auto;display:flex}.sources-actions-three .wabi-btn{flex:1}.sources-graph-preview{margin-top:var(--space-md);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.sources-graph-header{background:var(--bg-secondary);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.sources-graph-preview iframe{border:none;width:100%;height:400px;display:block}.build-progress{margin-bottom:var(--space-md)}.url-add-progress{margin-top:var(--space-md)}.url-add-progress-bar{background:#fff3;border-radius:2px;height:4px;overflow:hidden}.url-add-progress-fill{background:linear-gradient(90deg,#6366f1 0%,#8b5cf6 100%);border-radius:2px;height:100%;transition:width .3s}.url-add-progress-text{color:var(--text-secondary);margin-top:4px;font-size:12px;display:block}.url-add-progress-name{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.build-progress-bar{background:var(--bg-tertiary);border-radius:3px;height:6px;overflow:hidden}.build-progress-fill{background:linear-gradient(90deg, var(--accent) 0%, var(--accent-hover) 100%);border-radius:3px;height:100%;transition:width .3s}.build-progress-info{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-top:4px;font-size:12px;display:flex}.build-progress-status{color:var(--text-secondary);font-weight:500}.build-progress-message{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;max-width:70%;overflow:hidden}.sources-mode-tabs{padding:0 var(--space-md);border-bottom:1px solid var(--border);gap:2px;display:flex}.sources-mode-tab{color:var(--text-faint);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px;font-family:inherit;font-size:12px;transition:color .2s,border-color .2s}.sources-mode-tab.active{color:var(--text);border-bottom-color:var(--accent)}.sources-mode-tab:hover:not(.active){color:var(--text)}.sources-search-header{color:var(--text-faint);margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;font-size:12px;display:flex}.sources-search-footer{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.sources-select-all{color:var(--text-faint);cursor:pointer;align-items:center;gap:4px;font-size:12px;display:flex}.sources-search-item{align-items:center;gap:10px;display:flex}.sources-search-item input[type=checkbox]{cursor:pointer;flex-shrink:0}.sources-search-item.already-exists,.sources-search-item.invalid-source{opacity:.5;pointer-events:none}.sources-invalid-tag{background:var(--bg);color:#e57373;border:1px solid #e57373;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:10px}.sources-exists-tag{background:var(--bg);border:1px solid var(--border);color:var(--text-faint);border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:10px}.sources-upload-area{margin-bottom:var(--space-md)}.sources-drop-zone{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:8px;padding:32px 16px;transition:border-color .2s,background .2s}.sources-drop-zone:hover{border-color:var(--accent);background:#00000005}.sources-drop-icon{color:var(--text-faint);margin-bottom:8px;font-size:28px}.sources-drop-text{color:var(--text);margin-bottom:4px;font-size:13px}.sources-drop-hint{color:var(--text-faint);font-size:11px}.sources-upload-list{margin-top:var(--space-sm);flex-direction:column;gap:6px;display:flex}.sources-upload-item{background:var(--bg);border:1px solid var(--border);border-radius:4px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.sources-upload-name{color:var(--text);font-size:12px}.sources-upload-status{font-size:11px}.sources-upload-status.status-uploading{color:var(--accent)}.sources-upload-status.status-done{color:#4caf50}.sources-upload-status.status-error{color:#f44336}.sources-use-idea{color:var(--text-faint);cursor:pointer;align-items:center;gap:4px;font-size:12px;display:flex}.sources-use-idea input{cursor:pointer}.sources-modal-hint{color:var(--text-faint);margin-top:var(--space-sm);font-size:11px}.wabi-modal-add{max-width:800px;max-height:90vh}.chat-tab{min-height:0;padding-top:var(--space-lg);flex-direction:column;flex:1;display:flex}.chat-messages{padding:var(--space-sm) 0;gap:var(--space-sm);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-empty{text-align:center;color:var(--text-faint);padding:var(--space-xl) 0;font-size:12px;font-style:italic}.chat-message{max-width:85%}.chat-message-user{align-self:flex-end}.chat-message-assistant{align-self:flex-start}.chat-message-content{white-space:pre-wrap;padding:10px 14px;font-size:13px;line-height:1.7}.chat-message-user .chat-message-content{background:var(--bg-elevated);border:1px solid var(--border-bright);color:var(--text)}.chat-message-assistant .chat-message-content{background:var(--bg-card);border:1px solid var(--border);color:var(--text)}.chat-input-row{padding-top:var(--space-sm);border-top:1px solid var(--border);gap:8px;display:flex}.chat-input-row input{border:1px solid var(--border);background:var(--bg);font-size:13px;font-family:var(--font-display);color:var(--text);flex:1;padding:10px 12px}.chat-input-row input:focus{border-color:var(--accent);outline:none}.chat-error{color:var(--danger);text-align:center;padding:var(--space-sm);font-size:11px}.studio-tab{padding-top:var(--space-lg);flex-direction:column;flex:1;display:flex;overflow-y:auto}.studio-section{margin-bottom:var(--space-lg)}.studio-section-label{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-family:var(--font-mono);margin-bottom:10px}.studio-graph{background:var(--bg);border:1px solid var(--border);height:180px;min-height:140px;position:relative}.studio-graph iframe{border:none;width:100%;height:100%}.studio-graph-expand{opacity:0;transition:var(--transition);position:absolute;top:6px;right:6px}.studio-graph:hover .studio-graph-expand{opacity:1}.podcast-workspace{gap:var(--space-md);flex-direction:column;height:100%;display:flex}.podcast-section{gap:var(--space-md);flex-direction:column;flex:1;min-height:0;display:flex}.podcast-section-label{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:500}.podcast-editor{width:100%;min-height:200px;padding:var(--space-lg);border:1px solid var(--border);background:var(--bg-card);font-size:14px;line-height:1.8;font-family:var(--font-mono);color:var(--text);resize:none;border-radius:4px;flex:1;transition:border-color .2s,box-shadow .2s}.podcast-editor:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.podcast-editor::placeholder{color:var(--text-faint);font-style:italic}.podcast-audio-player,.podcast-progress{border-top:1px solid var(--border);padding:12px 0}.podcast-progress-label{font-size:11px;font-family:var(--font-mono);color:var(--text-muted);margin-bottom:8px}.podcast-progress-bar{background:var(--bg-card);border-radius:2px;height:4px;overflow:hidden}.podcast-progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-purple));border-radius:2px;height:100%;transition:width .3s}.podcast-actions{align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;flex-shrink:0;display:flex}.podcast-actions .wabi-btn{letter-spacing:.03em;border-radius:4px;flex:1;padding:12px 20px;font-size:13px;transition:all .2s}.podcast-actions .wabi-btn-primary{background:var(--accent);color:var(--bg);font-weight:500}.podcast-actions .wabi-btn-primary:hover:not(:disabled){background:var(--accent-glow);box-shadow:0 0 20px var(--accent-dim)}.podcast-actions .wabi-btn-primary:disabled{opacity:.4;cursor:not-allowed}.podcast-actions .wabi-btn-secondary{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}.podcast-actions .wabi-btn-secondary:hover:not(:disabled){border-color:var(--border-bright);background:var(--bg-card)}.podcast-actions .wabi-btn-ghost{color:var(--success);border:1px solid var(--success);opacity:.8;background:0 0}.podcast-preview{gap:var(--space-lg);flex-direction:column;height:100%;display:flex}.podcast-preview-section{gap:var(--space-sm);flex-direction:column;display:flex}.podcast-preview-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.podcast-preview-actions{margin-top:auto}@media (width<=640px){.page{padding:var(--space-lg) var(--space-sm) var(--space-xl)}.app-header h1{letter-spacing:.2em;font-size:16px}.idea-item{padding:var(--space-md)}.detail-article{padding:var(--space-md) var(--space-sm) var(--space-2xl)}.detail-layout{flex-direction:column}.tab-content{border-left:none;border-top:1px solid var(--border);width:100%;padding:var(--space-md) var(--space-sm)}.detail-title{font-size:20px}.bottom-nav-inner{gap:var(--space-sm)}.wabi-modal{width:95%;max-height:92vh}.wabi-header{padding:20px 24px 16px}.wabi-body{padding:20px 24px 28px}}.login-page{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg{pointer-events:none;z-index:0;position:fixed;inset:0}.login-grid{background:radial-gradient(circle at 1px 1px, var(--border) 1px, transparent 0);opacity:.5;background-size:40px 40px;position:absolute;inset:0}.login-glow{filter:blur(100px);opacity:.3;border-radius:50%;position:absolute}.login-glow-1{background:radial-gradient(circle, var(--accent-dim) 0%, transparent 65%);width:700px;height:700px;animation:8s ease-in-out infinite glowPulse;top:-250px;right:-150px}.login-glow-2{background:radial-gradient(circle,#9d8cd41a 0%,#0000 65%);width:500px;height:500px;animation:10s ease-in-out infinite reverse glowPulse;bottom:-150px;left:-100px}@keyframes glowPulse{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.4;transform:scale(1.08)}}.login-split{z-index:1;width:100%;max-width:900px;min-height:520px;animation:.8s cubic-bezier(.16,1,.3,1) .15s both splitReveal;display:flex;position:relative}@keyframes splitReveal{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.login-brand{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border);border-right:none;flex-direction:column;flex:0 0 42%;justify-content:center;align-items:center;padding:48px 36px;display:flex;position:relative;overflow:hidden}.login-brand:before{content:"";background:radial-gradient(ellipse at center, var(--accent-dim) 0%, transparent 70%);pointer-events:none;position:absolute;inset:0}.login-logo{text-align:center;z-index:1;animation:.8s .35s both brandFade;position:relative}@keyframes brandFade{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.logo-glyph{color:var(--accent);opacity:.7;margin-bottom:var(--space-sm);font-size:28px;animation:3.5s ease-in-out infinite glyphPulse}@keyframes glyphPulse{0%,to{opacity:.45;text-shadow:0 0 8px var(--accent-dim)}50%{opacity:1;text-shadow:0 0 20px var(--accent-glow)}}.logo-text{font-family:var(--font-display);justify-content:center;gap:12px;display:flex}.logo-title{letter-spacing:.35em;color:var(--text);font-size:42px;font-weight:200;line-height:1}.logo-subtitle{font-family:var(--font-mono);letter-spacing:.4em;color:var(--text-faint);margin-top:6px;font-size:8px}.brand-tagline{z-index:1;font-family:var(--font-body);color:var(--text-muted);letter-spacing:.12em;opacity:0;margin-top:24px;font-size:11px;animation:.8s .55s both brandFade;position:relative}.brand-accents{opacity:0;gap:8px;margin-top:20px;animation:.8s .7s both brandFade;display:flex}.brand-dot{background:var(--accent);border-radius:50%;width:3px;height:3px;animation:1.2s ease-in-out infinite brandDotPulse}.brand-dot:nth-child(2){animation-delay:.2s}.brand-dot:nth-child(3){animation-delay:.4s}@keyframes brandDotPulse{0%,to{opacity:.25}50%{opacity:1}}.login-form-panel{background:var(--bg-elevated);border:1px solid var(--border);flex:0 0 58%;justify-content:center;align-items:center;padding:48px 44px;display:flex}.login-form{width:100%;max-width:360px;animation:.7s .5s both formFade}@keyframes formFade{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.form-header{text-align:center;margin-bottom:32px}.form-title{font-family:var(--font-display);letter-spacing:.18em;color:var(--text);margin-bottom:6px;font-size:20px;font-weight:300}.form-subtitle{color:var(--text-faint);letter-spacing:.06em;font-size:11px}.form-fields{flex-direction:column;gap:20px;margin-bottom:20px;display:flex}.field-group{flex-direction:column;gap:6px;display:flex}.field-group label{color:var(--accent);letter-spacing:.22em;text-transform:uppercase;font-size:9px;font-family:var(--font-mono)}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-faint);transition:var(--transition);pointer-events:none;font-size:11px;position:absolute;left:12px}.input-wrapper input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);transition:var(--transition);font-size:13px;font-weight:300;font-family:var(--font-display);letter-spacing:.02em;border-radius:2px;padding:12px 14px 12px 36px}.input-wrapper input::placeholder{color:var(--text-faint);font-style:italic}.input-wrapper input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.input-wrapper:focus-within .input-icon{color:var(--accent)}.error-message{background:var(--danger-bg);border:1px solid #e5737340;border-radius:2px;justify-content:center;align-items:center;gap:8px;margin-bottom:16px;padding:10px;animation:.45s errorShake;display:flex}@keyframes errorShake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-3px)}80%{transform:translate(3px)}}.error-icon{background:var(--danger);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:600;display:flex}.error-message span:last-child{color:var(--danger);letter-spacing:.03em;font-size:11px}.submit-btn{width:100%;font-family:var(--font-display);letter-spacing:.2em;cursor:pointer;transition:var(--transition);background:linear-gradient(135deg, var(--accent), var(--accent-purple));color:var(--bg);border:none;border-radius:2px;margin-bottom:16px;padding:13px 24px;font-size:11px;font-weight:400;position:relative;overflow:hidden}.submit-btn:before{content:"";background:linear-gradient(135deg, var(--accent-glow), var(--accent));opacity:0;transition:var(--transition);position:absolute;inset:0}.submit-btn:hover:not(:disabled):before{opacity:1}.submit-btn:hover:not(:disabled){box-shadow:0 8px 28px var(--accent-glow);transform:translateY(-2px)}.submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-text{z-index:1;position:relative}.btn-shine{background:linear-gradient(90deg,#0000,#ffffff40,#0000);transition:none;position:absolute;inset:0;transform:translate(-100%)}.submit-btn:hover:not(:disabled) .btn-shine{animation:.65s btnShine}@keyframes btnShine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.form-footer{text-align:center}.link-text{color:var(--text-muted);letter-spacing:.03em;font-size:11px}.link-btn{color:var(--accent);cursor:pointer;letter-spacing:.03em;transition:var(--transition);font-size:11px;font-family:var(--font-display);background:0 0;border:none;margin-left:6px;padding:0}.link-btn:hover{color:var(--accent-glow);text-shadow:0 0 8px var(--accent-glow)}.login-footer{z-index:1;font-family:var(--font-mono);letter-spacing:.15em;color:var(--text-faint);font-size:8px;animation:1s .8s both footerFadeIn;position:absolute;bottom:24px}@keyframes footerFadeIn{0%{opacity:0}to{opacity:1}}@media (width<=768px){.login-split{flex-direction:column;max-width:420px;min-height:auto;margin:0 16px}.login-brand{border-right:1px solid var(--border);border-bottom:none;flex:none;padding:36px 28px}.login-form-panel{flex:none;padding:32px 28px}.logo-title{font-size:34px}.form-title{font-size:17px}}@media (width<=480px){.login-split{margin:0 8px}.login-brand{padding:28px 20px}.login-form-panel{padding:24px 20px}.logo-title{font-size:28px}}.wabi-alert-overlay{-webkit-backdrop-filter:blur(10px);z-index:9999;background:#0a0a0ce0;justify-content:center;align-items:center;animation:.4s cubic-bezier(.16,1,.3,1) wabiAlertFadeIn;display:flex;position:fixed;inset:0}[data-theme=light] .wabi-alert-overlay{background:#2a282499}@keyframes wabiAlertFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.wabi-alert-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-deep);width:88%;max-width:360px;padding:0;animation:.5s cubic-bezier(.16,1,.3,1) wabiAlertIn;position:relative;overflow:hidden}.wabi-alert-card:before{content:"";background:var(--accent);opacity:.7;width:48px;height:2px;position:absolute;top:0;left:0}.wabi-alert-card:after{content:"";background:var(--accent);opacity:.5;width:2px;height:36px;position:absolute;top:0;left:0}@keyframes wabiAlertIn{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.wabi-alert-icon{width:52px;height:52px;margin:var(--space-7) auto var(--space-5);border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.wabi-alert-icon:before{content:"";background:var(--accent-dim);border-radius:50%;animation:2s ease-in-out infinite wabiAlertPulse;position:absolute;inset:0}.wabi-alert-icon span{color:var(--accent);font-size:20px;line-height:1;position:relative}.wabi-alert-icon-success:before{background:#81c7841a}.wabi-alert-icon-success span{color:var(--success)}.wabi-alert-icon-error:before{background:var(--danger-bg)}.wabi-alert-icon-error span{color:var(--danger)}.wabi-alert-icon-warning:before{background:#d4a5741a}.wabi-alert-icon-warning span{color:var(--accent-warm)}.wabi-alert-icon-info:before{background:var(--accent-dim)}.wabi-alert-icon-info span{color:var(--accent)}@keyframes wabiAlertPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.15)}}.wabi-alert-body{text-align:center;padding:0 32px 24px}.wabi-alert-title{font-family:var(--font-display);letter-spacing:.1em;color:var(--text);margin-bottom:10px;font-size:16px;font-weight:400}.wabi-alert-message{color:var(--text-muted);letter-spacing:.02em;font-size:13px;font-weight:300;line-height:1.8}.wabi-alert-footer{border-top:1px solid var(--border);background:linear-gradient(to top, var(--bg-elevated), transparent);padding:16px 24px}.wabi-alert-actions{justify-content:center;gap:10px;display:flex}.wabi-alert-footer .wabi-btn{flex:1}.wabi-section-dialog{max-width:420px}.wabi-section-dialog .wabi-header{padding:var(--space-6) var(--space-7) var(--space-4)}.wabi-section-dialog .wabi-body{padding:var(--space-5) var(--space-7) var(--space-7)}.profile-layout{gap:var(--space-6);margin-top:var(--space-5);display:flex}.profile-sidebar{flex-direction:column;flex:0 0 220px;align-items:center;display:flex}.profile-avatar-section{text-align:center;padding:var(--space-lg) var(--space-md);background:var(--bg-card);border:1px solid var(--border);width:100%}.profile-avatar{width:80px;height:80px;margin:0 auto var(--space-md);cursor:pointer;background:linear-gradient(135deg, var(--accent), var(--accent-purple));transition:var(--transition);border-radius:50%;position:relative;overflow:hidden}.profile-avatar:hover{box-shadow:0 0 20px var(--accent-glow)}.profile-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.profile-avatar-initials{width:100%;height:100%;font-family:var(--font-display);color:var(--bg);letter-spacing:.02em;justify-content:center;align-items:center;font-size:28px;font-weight:500;display:flex}.profile-avatar-overlay{opacity:0;transition:var(--transition);color:#fff;letter-spacing:.05em;background:#00000080;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;inset:0}.profile-avatar:hover .profile-avatar-overlay{opacity:1}.profile-name{font-family:var(--font-display);color:var(--text);margin-bottom:var(--space-1);font-size:16px;font-weight:400}.profile-email{color:var(--text-muted);font-size:12px;font-family:var(--font-mono)}.profile-main{gap:var(--space-5);flex-direction:column;flex:1;min-width:0;display:flex}.profile-card{background:var(--bg-card);border:1px solid var(--border);padding:var(--space-lg)}.profile-card-title{font-family:var(--font-display);letter-spacing:.08em;color:var(--text);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--border);font-size:14px;font-weight:400}.profile-app-download{flex-wrap:wrap;align-items:flex-start;gap:32px;display:flex}.profile-qr-wrap{flex-direction:column;flex-shrink:0;align-items:center;gap:12px;display:flex}.profile-qr-frame{background:#fff;border-radius:12px;padding:12px;position:relative;box-shadow:0 4px 24px #4fd1c526}.profile-qr-frame:before{content:"";background:linear-gradient(135deg, var(--accent), var(--accent-warm));-webkit-mask-composite:xor;pointer-events:none;border-radius:12px;padding:1px;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.profile-qr-hint{color:var(--text-muted);text-align:center;letter-spacing:.05em;margin:0;font-size:12px}.profile-app-meta{flex-direction:column;flex:1;gap:10px;min-width:240px;display:flex}.profile-app-info-row{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.profile-app-label{color:var(--text-muted);letter-spacing:.05em}.profile-app-value{color:var(--text);font-weight:400}.profile-mono{font-family:var(--font-mono);color:var(--accent);font-size:12px}.profile-app-download-btn{justify-content:center;width:100%;height:40px;margin-top:8px}.profile-qr-tip{color:var(--text-faint);text-align:center;margin:4px 0 0;font-size:11px;line-height:1.6}@media (width<=640px){.profile-app-download{flex-direction:column;align-items:center}.profile-app-meta{width:100%}}.profile-field{margin-bottom:var(--space-5)}.profile-field:last-child{margin-bottom:0}.profile-label{color:var(--accent);letter-spacing:.2em;text-transform:uppercase;margin-bottom:var(--space-2);font-size:10px;font-family:var(--font-mono);display:block}.profile-input-row{gap:8px;display:flex}.profile-input-row .profile-input{flex:1}.profile-input{border:1px solid var(--border);background:var(--bg);width:100%;font-size:13px;font-family:var(--font-display);color:var(--text);transition:var(--transition);padding:10px 14px}.profile-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.profile-readonly{color:var(--text-muted);font-size:13px;font-family:var(--font-mono);padding:10px 0}.profile-password-form{margin-top:var(--space-sm);padding:var(--space-sm);background:var(--bg);border:1px solid var(--border);flex-direction:column;gap:8px;display:flex}.profile-password-actions{justify-content:flex-end;gap:8px;display:flex}.search-body{flex-direction:column;height:100%;min-height:0;display:flex}.search-header{padding:var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-card);flex-shrink:0;align-items:center;gap:12px;display:flex}.search-input-row{gap:var(--space-2);flex:1;display:flex}.search-input-row input{padding:var(--space-3) var(--space-4);border:1px solid var(--border);background:var(--bg);font-size:14px;font-family:var(--font-display);color:var(--text);transition:var(--transition);border-radius:2px;flex:1}.search-input-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.search-toggle{cursor:pointer;flex-shrink:0;align-items:center;gap:8px;display:flex}.search-toggle-track{background:var(--bg-elevated);border:1px solid var(--border-bright);border-radius:10px;width:36px;height:20px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative}.search-toggle-thumb{background:var(--text-muted);border-radius:50%;width:14px;height:14px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px}.search-toggle.active .search-toggle-track{background:var(--accent-dim);border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow)}.search-toggle.active .search-toggle-thumb{background:var(--accent);box-shadow:0 0 6px var(--accent-glow);left:18px}.search-toggle-label{color:var(--text-muted);font-size:13px;font-family:var(--font-display);letter-spacing:.02em;transition:color .2s}.search-toggle.active .search-toggle-label{color:var(--accent)}.search-results-scroll{padding:var(--space-3);gap:var(--space-2);flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.search-result-item{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border);transition:var(--transition);border-radius:3px;display:flex}.search-result-item:hover{border-color:var(--border-bright)}.search-result-item.selected{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 8px var(--accent-dim)}.search-result-item.imported,.search-result-item.already-exists{opacity:.5;cursor:default;background:var(--bg)}.search-result-item.invalid-source{opacity:.4;cursor:not-allowed}.search-result-checkbox{cursor:pointer;width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin-top:2px}.search-result-tag{background:var(--bg-elevated);color:var(--text-faint);border:1px solid var(--border);border-radius:3px;flex-shrink:0;margin-top:2px;padding:2px 8px;font-size:10px}.search-result-item.selected .search-result-tag{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.search-result-info{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.search-result-title{color:var(--text);font-size:14px;font-weight:400;line-height:1.4}.search-result-url{color:var(--text-faint);font-size:11px;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.search-result-snippet{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.search-loading{text-align:center;padding:var(--space-4);color:var(--text-faint);font-size:13px}.search-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:var(--bg-card);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.search-count{color:var(--text-secondary);font-size:13px}.search-select-all{align-items:center;gap:var(--space-2);color:var(--text-muted);cursor:pointer;font-size:13px;display:flex}.search-select-all input{cursor:pointer}@media (width<=640px){.profile-layout{flex-direction:column}.profile-sidebar{flex:none;width:100%}}.ppt-workspace-preview{gap:var(--space-md);flex-direction:column;height:100%;display:flex}.ppt-preview-header{justify-content:space-between;align-items:center;font-weight:600;display:flex}.ppt-preview-actions{gap:var(--space-sm);display:flex}.ppt-iframe{border:1px solid var(--border);background:#fff;border-radius:8px;flex:1;min-height:400px}.article-workspace{gap:var(--space-md);flex-direction:column;height:100%;display:flex}.article-title-input{font-family:var(--font-display);color:var(--text);border:none;border-bottom:1px solid var(--border);background:0 0;outline:none;flex:1;width:100%;padding:8px 0;font-size:24px;font-weight:600}.article-title-row{align-items:center;gap:12px;display:flex}.article-title-input:focus{border-bottom-color:var(--color-primary)}.article-saved-tag{color:var(--success);font-size:11px;font-family:var(--font-mono);background:#81c7841a;border-radius:4px;flex-shrink:0;padding:4px 10px}.article-content-editor{color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);padding:var(--space-md);resize:none;border-radius:8px;outline:none;flex:1;min-height:300px;font-family:inherit;font-size:15px;line-height:1.8}.article-actions{align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;flex-shrink:0;display:flex}.article-actions .wabi-btn{letter-spacing:.03em;border-radius:4px;flex:1;padding:12px 20px;font-size:13px;transition:all .2s}.article-actions .wabi-btn-primary{background:var(--accent);color:var(--bg);font-weight:500}.article-actions .wabi-btn-primary:hover:not(:disabled){background:var(--accent-glow);box-shadow:0 0 20px var(--accent-dim)}.article-actions .wabi-btn-primary:disabled{opacity:.4;cursor:not-allowed}.article-actions .wabi-btn-secondary{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border)}.article-actions .wabi-btn-secondary:hover:not(:disabled){border-color:var(--border-bright);background:var(--bg-card)}.workspace-empty{text-align:center;padding:var(--space-2xl) var(--space-lg);justify-content:center;align-items:center;gap:var(--space-md);flex-direction:column;height:100%;display:flex}.workspace-empty-icon{opacity:.6;font-size:48px}.workspace-empty h3{font-size:20px;font-weight:600}.workspace-empty p{color:var(--text-secondary);max-width:240px;font-size:14px}:root{--icon-size-xs:14px;--icon-size-sm:16px;--icon-size-md:20px;--icon-size-lg:24px;--icon-size-xl:32px;--icon-size-2xl:48px;--icon-color-default:var(--text);--icon-color-muted:var(--text-muted);--icon-color-accent:var(--accent);--icon-color-tech:var(--accent-teal);--icon-color-warning:var(--warning);--icon-color-danger:var(--danger);--icon-color-success:var(--success);--icon-stroke:1.5;--icon-stroke-thin:1;--icon-stroke-thick:2}.icon{flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.icon-xs{width:var(--icon-size-xs);height:var(--icon-size-xs)}.icon-sm{width:var(--icon-size-sm);height:var(--icon-size-sm)}.icon-md{width:var(--icon-size-md);height:var(--icon-size-md)}.icon-lg{width:var(--icon-size-lg);height:var(--icon-size-lg)}.icon-xl{width:var(--icon-size-xl);height:var(--icon-size-xl)}.icon-2xl{width:var(--icon-size-2xl);height:var(--icon-size-2xl)}.icon-default{color:var(--icon-color-default)}.icon-muted{color:var(--icon-color-muted)}.icon-accent{color:var(--icon-color-accent)}.icon-tech{color:var(--icon-color-tech)}.icon-warning{color:var(--icon-color-warning)}.icon-danger{color:var(--icon-color-danger)}.icon-success{color:var(--icon-color-success)}.icon-hover:hover{transform:scale(1.1)}.icon-glow:hover{filter:drop-shadow(0 0 8px)}.icon-tech-glow{filter:drop-shadow(0 0 2px var(--accent-teal))}.icon-accent-glow{filter:drop-shadow(0 0 4px var(--accent))}.icon-wabi{opacity:.7;stroke-width:var(--icon-stroke-thin)}@keyframes icon-pulse{0%,to{opacity:1}50%{opacity:.4}}.icon-pulse{animation:2s ease-in-out infinite icon-pulse}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon-spin{animation:1s linear infinite icon-spin}.icon-btn{cursor:pointer;width:32px;height:32px;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:all .2s;display:inline-flex}.icon-btn:hover{background:var(--bg-card);border-color:var(--border);color:var(--text)}.icon-btn:active{transform:scale(.95)}.icon-btn.icon-btn-sm{width:24px;height:24px}.icon-btn.icon-btn-lg{width:40px;height:40px}.status-dot{border-radius:50%;width:6px;height:6px;display:inline-block}.status-dot.online{background:var(--success);box-shadow:0 0 6px var(--success)}.status-dot.offline{background:var(--text-muted)}.status-dot.warning{background:var(--warning);box-shadow:0 0 6px var(--warning)}.status-dot.error{background:var(--danger);box-shadow:0 0 6px var(--danger)}.toolbox-tabs-new{padding:var(--space-md);background:linear-gradient(180deg, var(--bg-elevated) 0%, var(--bg-card) 100%);border-bottom:1px solid var(--border);flex-direction:column;gap:2px;display:flex}.toolbox-tab-new{align-items:center;gap:var(--space-md);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:12px 14px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.toolbox-tab-new:before{content:"";background:linear-gradient(90deg, var(--tab-color,var(--accent)) 0%, transparent 100%);opacity:0;transition:opacity .25s;position:absolute;inset:0}.toolbox-tab-new:hover:before{opacity:.05}.toolbox-tab-new.active{background:var(--bg-card);border-color:var(--border-bright);box-shadow:0 0 0 1px var(--tab-color,var(--accent)) inset, 0 0 20px #4fd1c50d}.tab-icon-wrapper{justify-content:center;align-items:center;display:flex;position:relative}.tab-icon-svg{color:var(--text-muted);filter:drop-shadow(0 0 #0000);transition:all .25s}.toolbox-tab-new:hover .tab-icon-svg{color:var(--text)}.toolbox-tab-new.active .tab-icon-svg{color:var(--tab-color,var(--accent));filter:drop-shadow(0 0 6px var(--tab-color,var(--accent)))}.tab-glow{background:radial-gradient(circle, var(--tab-color,var(--accent)) 0%, transparent 70%);opacity:.15;filter:blur(8px);width:30px;height:30px;animation:3s ease-in-out infinite tab-glow-pulse;position:absolute}@keyframes tab-glow-pulse{0%,to{opacity:.1;transform:scale(.9)}50%{opacity:.2;transform:scale(1.1)}}.tab-label{font-family:var(--font-mono);letter-spacing:.5px;color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:400;transition:color .25s}.toolbox-tab-new:hover .tab-label{color:var(--text)}.toolbox-tab-new.active .tab-label{color:var(--tab-color,var(--accent))}.tab-indicator{background:linear-gradient(180deg, var(--tab-color,var(--accent)), transparent);opacity:0;border-radius:2px 0 0 2px;width:3px;height:20px;transition:opacity .25s;position:absolute;top:50%;right:0;transform:translateY(-50%)}.toolbox-tab-new.active .tab-indicator{opacity:1}.toolbox-sources{padding:var(--space-lg)}.sources-action-grid{gap:var(--space-md);flex-direction:column;display:flex}.source-action-btn{align-items:center;gap:var(--space-sm);background:var(--bg-card);border:1px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;padding:24px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.source-action-btn:before{content:"";opacity:0;background:linear-gradient(135deg,#0000 0%,#ffffff05 100%);transition:opacity .3s;position:absolute;inset:0}.source-action-btn:hover:before{opacity:1}.source-action-btn:after{content:"";background:linear-gradient(135deg, var(--btn-glow-color,var(--accent)) 0%, transparent 50%);-webkit-mask-composite:xor;opacity:0;border-radius:12px;padding:1px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.source-action-btn:hover:after{opacity:.5}.source-action-btn.primary{--btn-glow-color:var(--accent-teal)}.source-action-btn.secondary{--btn-glow-color:var(--accent-purple)}.source-action-btn.tertiary{--btn-glow-color:var(--accent-moss)}.source-action-icon{width:48px;height:48px;color:var(--text-muted);justify-content:center;align-items:center;transition:all .3s;display:flex}.source-action-icon svg{filter:drop-shadow(0 0 #0000);transition:all .3s}.source-action-btn:hover .source-action-icon{color:var(--btn-glow-color,var(--accent))}.source-action-btn:hover .source-action-icon svg{filter:drop-shadow(0 0 8px var(--btn-glow-color,var(--accent)));transform:scale(1.1)}.source-action-label{font-family:var(--font-mono);color:var(--text);letter-spacing:.3px;font-size:13px;font-weight:500}.source-action-hint{color:var(--text-faint);letter-spacing:.5px;text-transform:uppercase;font-size:10px}.source-action-btn:disabled{opacity:.4;cursor:not-allowed}.source-action-btn:disabled:hover{transform:none}.sources-empty-hint{justify-content:center;align-items:center;gap:var(--space-md);margin-top:var(--space-lg);border:1px dashed var(--border);border-radius:12px;flex-direction:column;padding:40px 20px;display:flex}.hint-circuit{color:var(--text-faint);animation:20s linear infinite hint-rotate}@keyframes hint-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hint-text{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:1px;font-size:12px}.hint-sub{color:var(--text-faint);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.quick-actions{gap:var(--space-sm);padding:var(--space-md);display:flex}.tech-separator{align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;display:flex}.sep-line{background:linear-gradient(90deg, transparent, var(--border-bright), transparent);flex:1;height:1px}.sep-icon{color:var(--text-faint);opacity:.5}.podcast-action-bar{gap:var(--space-md);padding:var(--space-md) 0;flex-direction:column;display:flex}.podcast-action-bar .action-btn{justify-content:center;align-items:center;gap:var(--space-sm);background:var(--bg-card);border:1px solid var(--border);cursor:pointer;font-family:var(--font-mono);letter-spacing:.5px;text-transform:uppercase;border-radius:8px;padding:12px 16px;font-size:12px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.podcast-action-bar .action-btn:before{content:"";background:var(--btn-accent,var(--accent));opacity:0;width:3px;transition:opacity .25s;position:absolute;top:0;bottom:0;left:0}.podcast-action-bar .action-btn:hover:before{opacity:1}.podcast-action-bar .action-btn:hover{border-color:var(--btn-accent,var(--accent));box-shadow:0 0 0 1px var(--btn-accent,var(--accent)) inset, 0 0 20px #4fd1c51a;transform:translate(2px)}.podcast-action-bar .action-btn:active{transform:translate(2px)scale(.98)}.podcast-action-bar .action-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.podcast-action-bar .action-btn .btn-label{color:var(--text)}.podcast-action-bar .action-btn.btn-save{--btn-accent:var(--podcast-btn-save-color,#a8d8ea);color:var(--podcast-btn-save-color,#a8d8ea)}.podcast-action-bar .action-btn.btn-audio{--btn-accent:var(--podcast-btn-audio-color,#ffb347);color:var(--podcast-btn-audio-color,#ffb347)}.podcast-action-bar .action-btn.btn-generate{--btn-accent:var(--podcast-btn-generate-color,var(--accent));background:linear-gradient(135deg, var(--bg-card) 0%, #4fd1c50d 100%);border-color:var(--btn-accent);color:var(--btn-accent)}.podcast-action-bar .action-btn.btn-generate:hover{background:linear-gradient(135deg,#4fd1c51a 0%,#4fd1c50d 100%)}.podcast-action-bar .action-btn.btn-clear{--btn-accent:var(--danger);color:var(--text-muted);font-size:10px}.podcast-action-bar .action-btn.btn-clear:hover{color:var(--danger)}.podcast-action-bar .action-btn.loading .loading-dot{background:var(--btn-accent,var(--accent));width:4px;height:4px;box-shadow:0 0 6px var(--btn-accent,var(--accent));border-radius:50%;animation:1s ease-in-out infinite loading-pulse}@keyframes loading-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.subscription-page{max-width:1100px;margin:0 auto;padding:24px}.subscription-hero{text-align:center;margin:40px 0}.subscription-tagline{color:var(--text-secondary,#666);margin-top:8px}.subscription-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px;display:grid}@media (width<=1100px){.subscription-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.subscription-grid{grid-template-columns:1fr}}.plan-card{background:var(--bg-elevated,#fff);border:1px solid var(--border,#e5e5e5);text-align:center;border-radius:12px;padding:28px 20px;transition:transform .2s;position:relative}.plan-card:hover{transform:translateY(-2px)}.plan-card-highlight{border:2px solid #d4a542;box-shadow:0 8px 24px #d4a5421f}.plan-card-coming{opacity:.7}.plan-badge{color:#fff;background:#d4a542;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.plan-badge-grey{background:#999}.plan-icon{color:var(--text-primary,#333);margin:12px 0}.plan-card-highlight .plan-icon{color:#d4a542}.plan-name{margin:8px 0;font-size:20px}.plan-price{margin:12px 0;font-size:24px;font-weight:700}.plan-features{text-align:left;margin:20px 0;padding:0;list-style:none}.plan-features li{align-items:center;gap:8px;padding:6px 0;font-size:14px;display:flex}.plan-check{color:#4caf50;flex-shrink:0}.plan-cta{width:100%;margin-top:12px}.subscription-quota{background:var(--bg-elevated,#fff);border:1px solid var(--border,#e5e5e5);border-radius:12px;margin-bottom:40px;padding:20px}.quota-grid{grid-template-columns:repeat(5,1fr);gap:12px;margin-top:12px;display:grid}.quota-item{text-align:center;background:var(--bg-base,#f9f9f9);border-radius:8px;padding:12px 0}.quota-label{color:var(--text-secondary,#666);font-size:12px;display:block}.quota-value{margin-top:4px;font-size:18px;font-weight:600;display:block}.subscription-faq details{border:1px solid var(--border,#e5e5e5);border-radius:8px;margin-bottom:8px;padding:12px 16px}.subscription-faq summary{cursor:pointer;font-weight:500}.subscription-faq p{color:var(--text-secondary,#666);margin:8px 0 0;font-size:14px}.token-plan-badge{cursor:pointer;border:none;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.token-plan-badge-upgrade{background:var(--bg-elevated,#fff);color:var(--text-secondary,#666);border:1px solid var(--border,#e5e5e5)}.token-plan-badge-upgrade:hover{color:#d4a542;background:#f5f5f5}.token-plan-badge-active{color:#fff;background:linear-gradient(135deg,#d4a542 0%,#b8860b 100%);box-shadow:0 2px 6px #d4a5424d}.token-plan-badge-active:hover{transform:translateY(-1px)}.token-plan-badge-vvip{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#1a1a1a 0%,#4a4a4a 50%,#d4a542 100%);font-weight:700;box-shadow:0 2px 8px #00000059}.token-plan-badge-vvip:hover{transform:translateY(-1px)}.admin-page{max-width:1280px;margin:0 auto;padding:32px 28px 64px;font-family:Outfit,system-ui,sans-serif}.admin-header{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;padding-bottom:20px;display:flex;position:relative}.admin-header:after{content:"";background:linear-gradient(90deg, var(--accent), transparent);width:64px;height:1px;position:absolute;bottom:-1px;left:0}.admin-title-group{align-items:center;gap:16px;display:flex}.admin-title-icon{background:linear-gradient(135deg, var(--accent-dim), transparent);border:1px solid var(--border-bright);width:44px;height:44px;color:var(--accent);box-shadow:inset 0 0 12px var(--accent-dim);border-radius:12px;justify-content:center;align-items:center;display:flex}.admin-title{letter-spacing:.05em;color:var(--text);margin:0;font-family:Noto Serif SC,Outfit,serif;font-size:30px;font-weight:300;line-height:1.1}.admin-subtitle{color:var(--text-muted);letter-spacing:.02em;margin:6px 0 0;font-family:JetBrains Mono,monospace;font-size:12px}.admin-subtitle .admin-email{color:var(--text);font-weight:500}.admin-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-header-btn{letter-spacing:.04em;background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:12.5px;font-weight:500;transition:all .2s;display:inline-flex}.admin-header-btn:hover{border-color:var(--border-bright);background:var(--bg-card);color:var(--accent);transform:translateY(-1px)}.admin-header-btn.danger{color:var(--danger);border-color:var(--border)}.admin-header-btn.danger:hover{border-color:var(--danger);background:var(--danger-bg)}.admin-tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:0;margin-bottom:24px;display:flex;position:relative;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab-btn{cursor:pointer;color:var(--text-muted);letter-spacing:.08em;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 22px;font-family:inherit;font-size:13.5px;font-weight:400;transition:color .2s;display:inline-flex;position:relative}.admin-tab-btn:hover{color:var(--text)}.admin-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.admin-tab-btn.active:after{content:"";background:var(--accent);width:8px;height:8px;box-shadow:0 0 12px var(--accent-glow);opacity:.8;border-radius:50%;position:absolute;bottom:-2px;left:50%;transform:translate(-50%,50%)scale(.6)}.admin-content{background:var(--bg-card);border:1px solid var(--border);min-height:400px;box-shadow:var(--shadow);border-radius:8px;padding:24px;position:relative}.admin-content:before{content:"";background:linear-gradient(90deg, transparent, var(--border-bright), transparent);opacity:.5;height:1px;position:absolute;top:0;left:24px;right:24px}.wabi-input,.wabi-select{background:var(--bg);border:1px solid var(--border);height:36px;color:var(--text);box-sizing:border-box;border-radius:6px;outline:none;padding:0 12px;font-family:inherit;font-size:13px;transition:all .2s}.wabi-input:hover,.wabi-select:hover{border-color:var(--border-bright)}.wabi-input:focus,.wabi-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);background:var(--bg-elevated)}.wabi-input::placeholder{color:var(--text-faint)}.wabi-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' stroke='%238a8780' stroke-width='1.5' fill='none' stroke-linecap='round'/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.wabi-select option{background:var(--bg-card);color:var(--text)}.admin-search-wrap{flex-shrink:0;width:260px;position:relative}.admin-search-wrap svg{color:var(--text-faint);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.admin-search-wrap .wabi-input{width:100%;padding-left:36px}.admin-toolbar{flex-wrap:nowrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.admin-table-wrap{border:1px solid var(--border);background:var(--bg);border-radius:6px;overflow:visible}.admin-table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}.admin-table th{text-align:left;background:var(--bg-elevated);color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--border);z-index:1;padding:11px 16px;font-size:11px;font-weight:500;position:sticky;top:0}.admin-table td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:14px 16px;font-family:JetBrains Mono,Outfit,monospace;font-size:12.5px}.admin-table tbody tr{transition:background .15s}.admin-table tbody tr:hover{background:var(--bg-card)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table .num{font-variant-numeric:tabular-nums;color:var(--text)}.admin-table .email-cell{color:var(--accent);font-weight:500}.admin-table .dim{color:var(--text-muted);font-size:12px}.admin-table code{background:var(--bg-elevated);color:var(--accent);letter-spacing:.05em;border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:12px}.admin-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.admin-actions .wabi-btn{letter-spacing:.04em;padding:5px 12px;font-size:11.5px}.admin-plan-select{background-position:right 10px center;border-radius:4px;height:30px;padding:0 28px 0 10px;font-size:12px}.admin-pagination{border-top:1px solid var(--border);color:var(--text-muted);justify-content:center;align-items:center;gap:8px;margin-top:20px;padding-top:16px;font-family:JetBrains Mono,monospace;font-size:12.5px;display:flex}.admin-pagination .wabi-btn{padding:5px 14px;font-size:11.5px}.admin-pagination .page-info{color:var(--text);padding:0 12px}.admin-pagination .total{color:var(--text-muted)}.admin-create-row{background:var(--bg-elevated);border:1px dashed var(--border-bright);border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;padding:14px 16px;display:flex}.admin-create-row .label{color:var(--text-muted);letter-spacing:.05em;font-family:JetBrains Mono,monospace;font-size:12px}.admin-create-row .wabi-input{width:90px}.admin-create-row .wabi-input.grow{flex:1;min-width:160px;max-width:320px}.admin-create-row .wabi-btn{margin-left:auto}.plan-tag{letter-spacing:.06em;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:500;display:inline-flex}.plan-tag-free{color:var(--text-muted);border:1px solid var(--border);background:0 0}.plan-tag-token_plan{color:var(--accent-warm);background:linear-gradient(135deg,#d4a5422e,#b8860b2e);border:1px solid #d4a54266}.plan-tag-vvip{color:var(--text);background:linear-gradient(135deg,#4a4a4a40,#1a1a1a66 60%,#d4a5422e);border:1px solid #d4a54280;font-weight:600;box-shadow:0 0 12px #d4a54214}.status-tag{letter-spacing:.04em;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:500;display:inline-flex}.status-tag:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px}.status-active{color:var(--success);background:#81c78414;border:1px solid #81c78440}.status-disabled{color:var(--danger);background:var(--danger-bg);border:1px solid #e5737340}.inv-max-input{text-align:center;background:var(--bg-elevated);border:1px solid var(--border);width:76px;height:30px;color:var(--text);border-radius:4px;outline:none;padding:0 10px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:500;transition:all .2s}.inv-max-input:hover{border-color:var(--border-bright)}.inv-max-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.inv-max-input:disabled{opacity:.4;cursor:not-allowed}.inv-sep{color:var(--text-faint);margin:0 8px;font-family:JetBrains Mono,monospace}.inv-used-badge{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text);cursor:help;letter-spacing:.05em;border-radius:4px;align-items:center;gap:4px;padding:3px 10px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;display:inline-flex}.inv-used-badge:before{content:"🔒";opacity:.7;font-size:10px}.admin-empty{text-align:center;color:var(--text-muted);padding:64px 20px;font-size:14px}.admin-empty-icon{background:var(--bg-elevated);border:1px dashed var(--border);width:56px;height:56px;color:var(--text-faint);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:inline-flex}.action-tag{letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:500;display:inline-flex}.action-tag.tone-ok{color:var(--success);background:#81c78414;border:1px solid #81c7844d}.action-tag.tone-warn{color:var(--danger);background:var(--danger-bg);border:1px solid #e573734d}.action-tag.tone-muted{color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border)}.admin-loading{text-align:center;color:var(--text-muted);letter-spacing:.1em;padding:40px;font-family:JetBrains Mono,monospace;font-size:12px}.admin-loading:after{content:"...";text-align:left;width:1.5em;animation:1.4s steps(4,end) infinite admin-dots;display:inline-block}@keyframes admin-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.admin-table pre{background:var(--bg-elevated);max-width:420px;max-height:80px;color:var(--text-muted);border:1px solid var(--border);white-space:pre-wrap;word-break:break-all;border-radius:4px;margin:0;padding:8px 10px;font-family:JetBrains Mono,monospace;font-size:11px;overflow:auto}.plan-select{display:inline-block;position:relative}.plan-select-trigger{background:var(--bg-elevated);border:1px solid var(--border);height:30px;color:var(--text);letter-spacing:.04em;cursor:pointer;border-radius:5px;outline:none;align-items:center;gap:6px;min-width:90px;padding:0 10px;font-family:Outfit,JetBrains Mono,sans-serif;font-size:12px;font-weight:500;transition:all .18s;display:inline-flex}.plan-select-trigger:hover:not(:disabled){border-color:var(--border-bright);background:var(--bg-card)}.plan-select-trigger:disabled{opacity:.4;cursor:not-allowed}.plan-select.open .plan-select-trigger{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.plan-select-icon{flex-shrink:0}.plan-select-label{text-align:left;white-space:nowrap;flex:1}.plan-select-caret{color:var(--text-faint);flex-shrink:0;transition:transform .18s}.plan-select.open .plan-select-caret{color:var(--accent);transform:rotate(180deg)}.plan-select-trigger.tone-free .plan-select-icon{color:var(--text-muted)}.plan-select-trigger.tone-token .plan-select-icon{color:var(--accent-warm)}.plan-select-trigger.tone-vvip .plan-select-icon{color:var(--accent-warm);filter:drop-shadow(0 0 4px #d4a54266)}.plan-select-trigger.tone-token{background:linear-gradient(135deg,#d4a5420f,#0000);border-color:#d4a5424d}.plan-select-trigger.tone-vvip{background:linear-gradient(135deg,#4a4a4a26,#d4a5420f);border-color:#d4a54266}.plan-select-menu{background:var(--bg-card);border:1px solid var(--border-bright);min-width:260px;box-shadow:var(--shadow-deep), 0 0 0 1px var(--border);z-index:9999;border-radius:8px;padding:6px;animation:.15s ease-out plan-select-pop;position:absolute;top:calc(100% + 6px);right:0}@keyframes plan-select-pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.plan-select-option{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:10px;padding:9px 10px;font-family:Outfit,sans-serif;font-size:13px;transition:background .12s;display:flex;position:relative}.plan-select-option:hover{background:var(--bg-elevated)}.plan-select-option.selected{background:var(--accent-dim)}.plan-select-option.selected:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:2px;position:absolute;top:6px;bottom:6px;left:-6px}.plan-select-option-icon{background:var(--bg);border:1px solid var(--border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.plan-select-option.tone-free .plan-select-option-icon{color:var(--text-muted)}.plan-select-option.tone-token .plan-select-option-icon{color:var(--accent-warm);background:linear-gradient(135deg, #d4a5421a, var(--bg));border-color:#d4a5424d}.plan-select-option.tone-vvip .plan-select-option-icon{color:var(--accent-warm);background:linear-gradient(135deg,#4a4a4a4d,#d4a54214);border-color:#d4a54266;box-shadow:0 0 8px #d4a54226}.plan-select-option-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.plan-select-option-label{color:var(--text);letter-spacing:.02em;font-size:13px;font-weight:500}.plan-select-option-desc{color:var(--text-muted);letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;font-family:JetBrains Mono,monospace;font-size:11px;overflow:hidden}.plan-select-check{color:var(--accent);filter:drop-shadow(0 0 4px var(--accent-glow));flex-shrink:0}@media (width<=768px){.admin-page{padding:20px 14px 40px}.admin-title{font-size:24px}.admin-table th,.admin-table td{padding:10px 12px;font-size:12px}.admin-actions{justify-content:flex-start}.admin-create-row{padding:12px}.admin-create-row .wabi-btn{width:100%;margin-left:0}.admin-toolbar{flex-wrap:wrap}.admin-search-wrap{width:100%}}
