*{transition:all .3s ease-in-out}:root{--background: #e6f3ff;--theme-color: #4fc3f7;--text-color: #000;--card-background: #ffffff7d;--card-border-color: #fff;--techItem-background: #e5e5e5;--tip-color: #fff;--loading-background: var(--theme-color)}[theme=dark]{--background: #1a2332;--text-color: #fff;--card-background: #2a3441;--card-border-color: #3a4a5c;--techItem-background: transparent;--loading-background: #2b2b2b}.typewriter[data-v-a3b2cda1]{font-family:monospace;white-space:pre-wrap;overflow:hidden;text-align:center;font-size:18px}.cursor[data-v-a3b2cda1]{font-weight:bolder;margin-left:2px;opacity:1;transition:opacity .1s}.cursor.blink[data-v-a3b2cda1]{opacity:0}.mainCard{color:var(--text-color)}.mainCard .header{display:flex;align-items:center}.mainCard .header .avatar{width:9rem;height:9rem;border-radius:50%;border:.5rem solid var(--card-border-color);margin-right:1rem;position:relative}.mainCard .header .avatar img{border-radius:50%}.mainCard .header .avatar:before{content:attr(emjoi);position:absolute;bottom:0;right:0;background:var(--card-border-color);border-radius:50%;border:.3rem solid var(--card-border-color)}.mainCard .header .sayHi{display:flex;flex-direction:column}.mainCard .header .sayHi h1{font-size:2.5rem;margin:0 0 .5rem}.mainCard .header .sayHi .name{position:relative;color:#0000001a}.mainCard .header .sayHi .name:before{content:attr(data-text);position:absolute;top:0;left:0;color:var(--theme-color);width:0;white-space:nowrap;filter:drop-shadow(0 0 5px var(--theme-color));overflow:hidden;animation:showName 3s ease-in-out infinite;border-right:4px solid var(--theme-color);z-index:10}.mainCard .header .sayHi .contactTags{display:flex;margin-top:1rem;gap:.5rem}.mainCard .header .sayHi .contactTags .contact-tag{display:flex;align-items:center;gap:.3rem;padding:.4rem .8rem;background:var(--card-background);border-radius:8px;font-size:.9rem;text-decoration:none;color:var(--text-color);transition:all .3s ease;border:1px solid transparent}.mainCard .header .sayHi .contactTags .contact-tag:hover{text-decoration:none;background:var(--theme-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.mainCard .header .sayHi .contactTags .contact-tag svg{flex-shrink:0}.mainCard .content{display:flex;justify-content:space-between;margin-top:2rem;@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.mainCard .content .leftBox{width:30%}.mainCard .content .leftBox .welcome-card{background:var(--card-background);color:var(--text-color);border:3px solid var(--card-border-color)}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info{min-height:4rem;display:flex;align-items:center;justify-content:center;padding:.5rem 0}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .loading-welcome{color:var(--text-color);opacity:.8;font-size:.9rem;text-align:center}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .welcome-message{width:100%;text-align:center}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .welcome-message p{margin:.3rem 0;line-height:1.4;font-size:.85rem}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .welcome-message p .highlight{color:var(--theme-color);font-weight:700}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .welcome-message p .ip-address{font-family:monospace;background:#0000001a;padding:.1rem .3rem;border-radius:3px;font-size:.75rem}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .welcome-message p.time-greeting{color:var(--theme-color);font-weight:500;margin-top:.5rem;font-size:.8rem}.mainCard .content .leftBox .welcome-card .welcome-content .welcome-info .error-message{color:#ff6b6b;text-align:center;font-style:italic;font-size:.85rem}.mainCard .content .leftBox .personality-card{background:var(--card-background);color:var(--text-color);border:3px solid var(--card-border-color)}.mainCard .content .leftBox .personality-card .personality-content{text-align:center}.mainCard .content .leftBox .personality-card .personality-content h3{margin:0 0 1rem;font-size:1.2rem;font-weight:700}.mainCard .content .leftBox .personality-card .personality-content .personality-info{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.8rem}.mainCard .content .leftBox .personality-card .personality-content .personality-info .personality-type{font-size:1.5rem;font-weight:700;background:var(--theme-color);color:#fff;padding:.4rem .8rem;border-radius:8px;letter-spacing:1px}.mainCard .content .leftBox .personality-card .personality-content .personality-info .personality-name{font-size:1.1rem;font-weight:500;color:var(--text-color)}.mainCard .content .leftBox .personality-card .personality-content .personality-description{font-size:.85rem;line-height:1.5;margin:0 0 1rem;opacity:.95;padding:0 .5rem}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions{margin-top:1rem}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar{margin-bottom:.8rem}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar .dimension-labels{display:flex;justify-content:space-between;margin-bottom:.3rem;font-size:.75rem;font-weight:500}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar .dimension-labels .dimension-left,.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar .dimension-labels .dimension-right{color:var(--text-color)}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar .progress-container{position:relative;height:12px;background:#0000001a;border-radius:6px;overflow:hidden;display:flex;margin:.5rem 0}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar .progress-container .progress-left{height:100%;transition:width 2s cubic-bezier(.4,0,.2,1);flex-shrink:0;border-radius:6px 0 0 6px}.mainCard .content .leftBox .personality-card .personality-content .personality-dimensions .dimension-bar .progress-container .progress-right{height:100%;transition:width 2s cubic-bezier(.4,0,.2,1);flex-shrink:0;border-radius:0 6px 6px 0}.mainCard .content .rightBox{width:69%}.mainCard .content .rightBox .linkBox{margin:.5rem 0;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-around;align-items:center}.mainCard .content .rightBox .linkBox a:before{display:none}.mainCard .content .rightBox .zodiac:before{background:#bc8cff}.mainCard .content .rightBox .techStack{display:flex;flex-wrap:wrap}.mainCard .content .rightBox .techStack .techItem{width:48px;height:48px;border-radius:12px;background-color:var(--techItem-background);border:2px solid var(--card-border-color);position:relative;margin:0 .2rem .2rem;display:flex;align-items:center;justify-content:center}.mainCard .content .rightBox .techStack .techItem:before{content:attr(data-name);position:absolute;top:-1.5rem;left:50%;color:var(--tip-color);font-size:14px;background:#2d2d2d;width:max-content;padding:0 5px;text-align:center;border-radius:5px;transition:.3s ease-in-out;transform:translate(-50%,20px);opacity:0}.mainCard .content .rightBox .techStack .techItem:hover:before{transform:translate(-50%);opacity:1}.mainCard .content .rightBox .typew{display:flex;justify-content:center;margin:1.5rem 0}.mainCard .content .rightBox .typew svg{margin:0 .5rem}.mainCard .card{background:var(--card-background);padding:1rem;margin-bottom:1rem;border-radius:16px;border:3px solid var(--card-border-color)}.mainCard .card .cardHeader{font-size:18px;font-weight:bolder;margin-bottom:.5rem}.mainCard .hover{transition:all .3s ease-in-out;text-decoration:none}.mainCard .hover:hover{text-decoration:none;transform:translateY(-5px);box-shadow:0 5px 10px #0003}.mainCard .time-progress h3{margin-top:0;margin-bottom:1rem}.mainCard .time-progress .progress-item{margin-bottom:1rem}.mainCard .time-progress .progress-item:last-child{margin-bottom:0}.mainCard .time-progress .progress-item p{margin:0 0 .5rem;font-size:.9rem}.mainCard .time-progress .progress-item .progress-bar{height:5px;background-color:#e0e0e0;border-radius:5px;overflow:hidden}.mainCard .time-progress .progress-item .progress-bar .progress-fill{height:100%;background-color:var(--theme-color);border-radius:5px;transition:width .3s ease}.mainCard .footer{margin-top:1.5rem;padding:.8rem 1rem .7rem;text-align:center;background:var(--card-background);border:3px solid var(--card-border-color);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0000001a}.mainCard .footer .footer-quote{font-size:.85rem;font-style:italic;color:var(--text-color);font-weight:500;margin-bottom:.5rem;transition:all .3s ease;position:relative;display:inline-block;@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}}.mainCard .footer .footer-quote:before,.mainCard .footer .footer-quote:after{content:"「";color:var(--theme-color);opacity:.7;margin:0 .1rem;font-weight:700}.mainCard .footer .footer-quote:after{content:"」"}.mainCard .footer .footer-quote .loading-text{color:var(--theme-color);opacity:.7;font-style:normal}.mainCard .footer .footer-quote .quote-actions{position:absolute;right:-60px;top:50%;transform:translateY(-50%);display:flex;gap:.3rem;opacity:0;transition:opacity .3s ease}.mainCard .footer .footer-quote .quote-actions .action-btn{width:24px;height:24px;border:none;background:var(--theme-color);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.mainCard .footer .footer-quote .quote-actions .action-btn:hover:not(:disabled){background:var(--theme-color-light);transform:scale(1.1)}.mainCard .footer .footer-quote .quote-actions .action-btn:disabled{opacity:.5;cursor:not-allowed}.mainCard .footer .footer-quote .quote-actions .action-btn .iconify{color:#fff}.mainCard .footer .footer-quote .quote-actions .action-btn .iconify.rotating{animation:rotate 1s linear infinite}.mainCard .footer .footer-quote:hover .quote-actions{opacity:1}.mainCard .footer .footer-info{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:.3rem;font-size:.75rem;color:var(--text-color);line-height:1.5}.mainCard .footer .footer-info span{color:var(--text-color)}.mainCard .footer .footer-info span.divider{opacity:.5;margin:0 .2rem}.mainCard .footer .footer-info a{color:#000;text-decoration:none;transition:all .2s ease;font-weight:600;position:relative}.mainCard .footer .footer-info a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--theme-color);transition:width .3s ease}.mainCard .footer .footer-info a:hover{color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}@media (max-width: 768px){.mainCard .footer{padding:.7rem .8rem .6rem}.mainCard .footer .footer-quote{font-size:.8rem;margin-bottom:.4rem}.mainCard .footer .footer-info{font-size:.7rem;gap:.2rem}}@keyframes showName{0%{width:0}50%{width:105%}to{width:0}}@media (max-width: 768px){.mainCard{padding:1rem 1rem 3rem}.mainCard .header{flex-direction:column;text-align:center;align-items:center;gap:1rem}.mainCard .header .avatar{width:6rem;height:6rem;border-width:.4rem;margin-right:0;margin-bottom:.5rem}.mainCard .header .sayHi{width:100%}.mainCard .header .sayHi h1{font-size:2rem;margin-bottom:1rem}.mainCard .header .sayHi .contactTags{justify-content:center;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}.mainCard .header .sayHi .contactTags .contact-tag{font-size:.8rem;padding:.3rem .6rem;flex:0 0 auto;min-width:fit-content}.mainCard .content{flex-direction:column-reverse;align-items:center;justify-content:space-between;margin-top:1.5rem}.mainCard .content .leftBox,.mainCard .content .rightBox{width:100%;margin-bottom:1rem}}@media (max-width: 480px){.mainCard{padding:.5rem}.mainCard .header .sayHi h1{font-size:1.8rem}.mainCard .header .sayHi .contactTags .contact-tag{font-size:.75rem;padding:.25rem .5rem}}.blog-subscription{background:var(--card-background);color:var(--text-color);border:3px solid var(--card-border-color);max-height:60vh;overflow-y:auto}.blog-subscription .blog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.blog-subscription .blog-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-color);display:flex;align-items:center;gap:.5rem}.blog-subscription .blog-header .blog-refresh-btn{width:28px;height:28px;border:none;background:var(--theme-color);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.blog-subscription .blog-header .blog-refresh-btn:hover:not(:disabled){background:var(--theme-color-light);transform:scale(1.1)}.blog-subscription .blog-header .blog-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.blog-subscription .blog-header .blog-refresh-btn .iconify{color:#fff}.blog-subscription .blog-header .blog-refresh-btn .iconify.rotating{animation:rotate 1s linear infinite}.blog-subscription .blog-articles .blog-loading,.blog-subscription .blog-articles .blog-error,.blog-subscription .blog-articles .blog-empty{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem;color:var(--text-color);opacity:.7;font-size:.85rem}.blog-subscription .blog-articles .blog-error{color:#ef4444}.blog-subscription .blog-articles .blog-list{max-height:50vh;overflow-y:auto}.blog-subscription .blog-articles .blog-list .blog-item{margin-bottom:.6rem;padding:.5rem;border-radius:6px;transition:background-color .2s ease;border:1px solid rgba(0,0,0,.1)}.blog-subscription .blog-articles .blog-list .blog-item:hover{background-color:#0000000d}.blog-subscription .blog-articles .blog-list .blog-item:last-child{margin-bottom:0}.blog-subscription .blog-articles .blog-list .blog-item .blog-title{display:block;color:var(--text-color);text-decoration:none;font-weight:500;font-size:.85rem;line-height:1.3;margin-bottom:.25rem;transition:color .2s ease;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.blog-subscription .blog-articles .blog-list .blog-item .blog-title:hover{color:var(--theme-color)}.blog-subscription .blog-articles .blog-list .blog-item .blog-meta{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:var(--text-color);opacity:.6}.blog-subscription .blog-articles .blog-list .blog-item .blog-meta .blog-date{font-weight:500}.blog-subscription .blog-articles .blog-list .blog-item .blog-meta .blog-author{font-style:italic}.loadBox[data-v-e3be3717]{width:100%;height:100%;background:var(--loading-background);position:absolute;z-index:100;overflow:hidden}#loader[data-v-e3be3717]{position:absolute;top:calc(50% - 20px);left:calc(50% - 20px)}@keyframes loader-e3be3717{0%{left:-100px}to{left:110%}}#box[data-v-e3be3717]{width:50px;height:50px;background:#fff;animation:animate-e3be3717 .5s linear infinite;position:absolute;top:0;left:0;border-radius:3px}@keyframes animate-e3be3717{17%{border-bottom-right-radius:3px}25%{transform:translateY(9px) rotate(22.5deg)}50%{transform:translateY(18px) scaleY(.9) rotate(45deg);border-bottom-right-radius:40px}75%{transform:translateY(9px) rotate(67.5deg)}to{transform:translateY(0) rotate(90deg)}}#shadow[data-v-e3be3717]{width:50px;height:5px;background:#000;opacity:.1;position:absolute;top:59px;left:0;border-radius:50%;animation:shadow-e3be3717 .5s linear infinite}@keyframes shadow-e3be3717{50%{transform:scaleX(1.2)}}main{width:90%;max-width:1000px;margin:0 auto;padding:5rem 0 3rem}@media (max-width: 768px){main{width:95%;padding:2rem 0 1rem}}body{background:var(--background);padding:0;margin:0;min-height:100vh;position:relative;transition:background 0s}img{width:100%;height:100%}b{display:inline-block;position:relative;margin:0 .2rem;text-align:center;z-index:1}b:before{content:"";position:absolute;bottom:0;z-index:-1;opacity:.8;border-radius:4px;width:100%;height:30%;background:var(--theme-color);transition:.3s ease-in-out}b:hover:before{height:70%}a{text-decoration:none;color:var(--theme-color);transition:.3s ease-in-out}a:not([class]):not(.contact-tag):not(.blog-title){padding:0 .3rem;position:relative}a:not([class]):not(.contact-tag):not(.blog-title):hover{color:#fff}a:not([class]):not(.contact-tag):not(.blog-title):hover:before{height:100%}a:not([class]):not(.contact-tag):not(.blog-title):before{content:"";transition:.3s ease-in-out;border-radius:5px;z-index:-1;display:inline-block;position:absolute;left:50%;transform:translate(-50%);bottom:0;width:100%;height:2px;background:var(--theme-color)}.reThemeBtn{width:3.5rem;height:1.8rem;background:var(--card-background);border:2px solid var(--card-border-color);border-radius:2rem;position:absolute;top:1rem;right:1rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 2px 8px #0000001a;display:flex;align-items:center;justify-content:center;font-size:1rem}.reThemeBtn:before{content:"";position:absolute;top:50%;left:.2rem;width:1.2rem;height:1.2rem;background:var(--theme-color);border-radius:50%;transform:translateY(-50%);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0003;z-index:1}.reThemeBtn:after{content:"🌙";position:absolute;top:50%;left:.2rem;transform:translateY(-50%);transition:all .4s cubic-bezier(.4,0,.2,1);opacity:0;z-index:2;font-size:.7rem;pointer-events:none;display:flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem}.reThemeBtn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:var(--theme-color)}.reThemeBtn[data-theme=dark]:before{left:calc(100% - 1.4rem);background:var(--theme-color)}.reThemeBtn[data-theme=dark]:after{content:"☀️";left:calc(100% - 1.4rem);opacity:1}.reThemeBtn[data-theme=light]:before{left:.2rem;background:var(--theme-color)}.reThemeBtn[data-theme=light]:after{content:"🌙";left:.2rem;opacity:1}#app{min-height:100vh}.wallpaper-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;overflow:hidden}.wallpaper-image,.wallpaper-video{width:100%;height:100%;object-fit:cover;object-position:center}.wallpaper-video{position:absolute;top:0;left:0}.wallpaper-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0000004d;z-index:1}[theme=dark] .wallpaper-overlay{background:#00000080}[theme=light] .wallpaper-overlay{background:#ffffff1a}
