@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;600&display=swap";.log-display{position:fixed;bottom:20px;left:20px;z-index:1000}.log-display.collapsed .log-panel{width:50%;height:0;transform:scale(0);opacity:0;transform-origin:20px calc(100% - 20px)}.log-display.collapsed .log-toggle{transform:scale(1);opacity:1}.log-display.expanded .log-panel{transform:scale(1);opacity:1;transform-origin:20px calc(100% - 20px)}.log-display.expanded .log-toggle{transform:scale(0);opacity:0}.log-display .log-toggle{position:absolute;bottom:0;left:0;border:1px solid rgba(0,0,0,0);width:30px;height:30px;background:#0b0f18d9;border-radius:50%;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d,inset 0 1px #ffffff1a}.log-display .log-toggle:hover{transform:scale(1.1);border-color:#4bff96;box-shadow:2px 2px 8px #4bff96}.log-display .log-toggle:hover .toggle-icon{transform:rotate(180deg)}.log-display .log-toggle .toggle-icon{width:20px;height:20px;color:#e6e6e6e6;transition:transform .3s ease}.log-display .log-panel{width:420px;height:300px;border:1px solid rgba(75,85,99,.3);border-radius:12px;box-shadow:0 8px 32px #0006,inset 0 1px #ffffff1a;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden}.log-display .log-panel .log-header{padding:6px 12px;border-bottom:1px solid rgba(75,85,99,.3);display:flex;align-items:center;justify-content:space-between;background:#0b0f18f2}.log-display .log-panel .log-header .log-title{font-size:12px;font-weight:600;color:#d1d5dbf2;font-family:Microsoft YaHei,微软雅黑,Arial,sans-serif;letter-spacing:.025em}.log-display .log-panel .log-header .header-actions{display:flex;align-items:center;gap:8px}.log-display .log-panel .log-header .header-actions .action-btn{width:24px;height:24px;border:none;background:#37415199;border-radius:4px;color:#d1d5dbe6;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.log-display .log-panel .log-header .header-actions .action-btn:hover{background:#4b5563cc;color:#e5e7eb;transform:scale(1.05)}.log-display .log-panel .log-header .header-actions .action-btn.clear-btn:hover{background:#ef444433;color:#ef4444e6}.log-display .log-panel .log-header .header-actions .action-btn.collapse-btn:hover{background:#3b82f633;color:#3b82f6e6}.log-display .log-panel .log-content{flex:1;padding:0;overflow:hidden;display:flex;flex-direction:column;background:#0b0f18e6}.log-display .log-panel .log-content .log-messages{flex:1;overflow-y:auto;padding:12px 16px;scroll-behavior:smooth}.log-display .log-panel .log-content .log-messages::-webkit-scrollbar{width:6px}.log-display .log-panel .log-content .log-messages::-webkit-scrollbar-track{background:#1f293780;border-radius:3px}.log-display .log-panel .log-content .log-messages::-webkit-scrollbar-thumb{background:#4b556399;border-radius:3px}.log-display .log-panel .log-content .log-messages::-webkit-scrollbar-thumb:hover{background:#6b7280cc}.log-display .log-panel .log-content .log-messages .log-message{display:flex;align-items:flex-start;margin-bottom:8px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;line-height:1.4;word-break:break-all}.log-display .log-panel .log-content .log-messages .log-message:last-child{margin-bottom:0}.log-display .log-panel .log-content .log-messages .log-message .message-time{color:#9ca3afcc;font-size:10px;min-width:55px;margin-right:8px;flex-shrink:0;font-variant-numeric:tabular-nums}.log-display .log-panel .log-content .log-messages .log-message .message-content{flex:1;color:#e5e7ebf2}.log-display .log-panel .log-content .log-messages .log-message .message-content.info{color:#57a5fff2}.log-display .log-panel .log-content .log-messages .log-message .message-content.success{color:#30e974f2}.log-display .log-panel .log-content .log-messages .log-message .message-content.warning{color:#fbbf24f2}.log-display .log-panel .log-content .log-messages .log-message .message-content.error{color:#ef4444f2}.log-display .log-panel .log-content .log-messages .log-message .message-content.debug{color:#e5e7ebd9}.log-display .log-panel .log-content .log-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3afb3;font-family:JetBrains Mono,Fira Code,monospace;font-size:12px}.log-display .log-panel .log-content .log-empty .empty-icon{width:32px;height:32px;margin-bottom:8px;opacity:.6}.log-display .log-panel .log-content .log-empty .empty-text{text-align:center;line-height:1.5}.log-display .log-panel .log-content .scroll-to-bottom-btn{position:absolute;bottom:24px;right:12px;width:32px;height:32px;background:#3c65a733;border:none;border-radius:50%;color:#ececec80;scale:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1)}.log-display .log-panel .log-content .scroll-to-bottom-btn.hidden{background:#0000;scale:0}@keyframes logSlideIn{0%{transform:translate(-10px);opacity:.2}to{transform:translate(0);opacity:1}}.log-message{animation:logSlideIn .1s ease-out}@media(max-width:768px){.log-display .log-panel{width:calc(100vw - 40px);max-width:400px}.log-display .log-toggle{width:48px;height:48px}}body{margin:0;padding:0;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100vw;height:100vh}.tp-dfwv{min-width:max-content;max-width:300px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tp-dfwv .tp-rotv.tp-rotv-expanded .tp-rotv_c,.tp-fldv.tp-fldv-expanded>.tp-fldv_c{overflow-y:auto;height:auto;max-height:80vh}.tp-dfwv .tp-rotv.tp-rotv-expanded .tp-rotv_c::-webkit-scrollbar,.tp-fldv.tp-fldv-expanded>.tp-fldv_c::-webkit-scrollbar{width:6px}.tp-dfwv .tp-rotv.tp-rotv-expanded .tp-rotv_c::-webkit-scrollbar-track,.tp-fldv.tp-fldv-expanded>.tp-fldv_c::-webkit-scrollbar-track{background:#1f293780;border-radius:3px}.tp-dfwv .tp-rotv.tp-rotv-expanded .tp-rotv_c::-webkit-scrollbar-thumb,.tp-fldv.tp-fldv-expanded>.tp-fldv_c::-webkit-scrollbar-thumb{background:#4b556399;border-radius:3px}.tp-dfwv .tp-rotv.tp-rotv-expanded .tp-rotv_c::-webkit-scrollbar-thumb:hover,.tp-fldv.tp-fldv-expanded>.tp-fldv_c::-webkit-scrollbar-thumb:hover{background:#6b7280cc}:root{--tp-base-background-color: hsla(221.54 37.14% 6.86% / .9);--tp-base-shadow-color: hsla(0, 0%, 0%, .2);--tp-button-background-color: hsla(0, 0%, 80%, 1);--tp-button-background-color-active: hsla(0, 0%, 100%, 1);--tp-button-background-color-focus: hsla(0, 0%, 95%, 1);--tp-button-background-color-hover: hsla(0, 0%, 85%, 1);--tp-button-foreground-color: hsla(0, 0%, 0%, .8);--tp-container-background-color: hsla(0, 0%, 0%, .3);--tp-container-background-color-active: hsla(0, 0%, 0%, .6);--tp-container-background-color-focus: hsla(0, 0%, 0%, .5);--tp-container-background-color-hover: hsla(0, 0%, 0%, .4);--tp-container-foreground-color: hsla(0, 0%, 100%, .5);--tp-groove-foreground-color: hsla(0, 0%, 0%, .2);--tp-input-background-color: hsla(0, 0%, 0%, .3);--tp-input-background-color-active: hsla(0, 0%, 0%, .6);--tp-input-background-color-focus: hsla(0, 0%, 0%, .5);--tp-input-background-color-hover: hsla(0, 0%, 0%, .4);--tp-input-foreground-color: hsla(0, 0%, 100%, .5);--tp-label-foreground-color: hsla(0, 0%, 100%, .5);--tp-monitor-background-color: hsla(0, 0%, 0%, .3);--tp-monitor-foreground-color: hsla(0, 0%, 100%, .3)}.loader-container{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;z-index:100;-webkit-user-select:none;user-select:none;background-color:#ffffffde;transition:background-color .5s ease-in-out}.loader{width:11px;aspect-ratio:1;border-radius:50%;background-color:#000;display:grid;animation:l22-0 2s infinite linear;transition:background-color .5s ease-in-out}.loader:before,.loader:after{content:"";grid-area:1/1;margin:15%;border-radius:50%;background:inherit;transform:rotate(0) translate(150%);animation:l22 1s infinite}.loader:after{animation-delay:-.5s}@keyframes l22-0{to{transform:rotate(1turn)}}@keyframes l22{to{transform:rotate(1turn) translate(150%)}}.loaded{pointer-events:none;background-color:transparent}.loaded .loader{background-color:transparent}
