:root{--color-primary: #1e40af;--color-primary-light: #3b82f6;--color-primary-dark: #1e3a8a;--color-accent: #0d9488;--color-accent-light: #14b8a6;--text-primary: #1e293b;--text-secondary: #475569;--text-light: #94a3b8;--text-inverse: #ffffff;--background: #ffffff;--background-secondary: #f8fafc;--background-card: #ffffff;--background-muted: #f1f5f9;--border-color: #e2e8f0;--border-color-hover: #cbd5e1;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.75rem;--font-size-4xl: 2.25rem;--font-size-5xl: 2.5rem;--font-size-6xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-colored: 0 10px 25px -5px rgba(30, 64, 175, .2);--transition-fast: all .15s ease;--transition: all .3s ease;--transition-slow: all .5s ease;--transition-colors: color .2s ease, background-color .2s ease, border-color .2s ease;--transition-transform: transform .3s ease;--gradient-primary: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);--gradient-accent: linear-gradient(135deg, #0d9488 0%, #14b8a6 100%);--gradient-mixed: linear-gradient(135deg, #1e40af 0%, #0d9488 100%);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--primary-color: var(--color-primary);--primary-dark: var(--color-primary-dark);--secondary-color: var(--text-secondary);--accent-color: var(--color-accent)}@media (prefers-color-scheme: dark){:root{--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-light: #94a3b8;--background: #0f172a;--background-secondary: #1e293b;--background-card: #1e293b;--background-muted: #334155;--border-color: #334155;--border-color-hover: #475569}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--background);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--primary-color);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-dark)}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:4rem 0}.section-title{font-size:2rem;font-weight:700;margin-bottom:2rem;color:var(--text-primary);position:relative;display:inline-block}.section-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));border-radius:2px}.card{background:var(--background-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);transition:var(--transition);border:1px solid var(--border-color)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;font-size:1rem;cursor:pointer;border:none;transition:var(--transition)}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:#fff}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.03)}70%{transform:scale(.97)}to{opacity:1;transform:scale(1)}}.animate-on-scroll{opacity:0;will-change:opacity,transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.animate-fade-in-up{animation:fadeInUp .6s ease-out both}.animate-fade-in-left{animation:fadeInLeft .6s ease-out both}.animate-fade-in-right{animation:fadeInRight .6s ease-out both}.animate-scale-in{animation:scaleIn .5s ease-out both}.animate-bounce-in{animation:bounceIn .7s cubic-bezier(.175,.885,.32,1.275) both}.animate-delay-100{animation-delay:.08s}.animate-delay-200{animation-delay:.16s}.animate-delay-300{animation-delay:.24s}.animate-delay-400{animation-delay:.32s}.animate-delay-500{animation-delay:.4s}.animate-delay-600{animation-delay:.48s}.skip-link{position:absolute;top:-100px;left:.5rem;z-index:99999;padding:.75rem 1.25rem;background:var(--color-primary);color:var(--text-inverse);font-weight:600;font-size:.9rem;border-radius:0 0 var(--radius-md) var(--radius-md);text-decoration:none;box-shadow:var(--shadow-md);transition:top .25s ease}.skip-link:focus,.skip-link:focus-visible{top:0;outline:3px solid var(--color-accent);outline-offset:2px;color:var(--text-inverse)}*:focus{outline:none}*:focus-visible{outline:3px solid rgba(30,64,175,.55);outline-offset:2px;border-radius:var(--radius-sm, 4px);transition:outline-offset .15s ease}button:focus-visible,a:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::selection{background:#1e40af2e;color:var(--text-primary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--background-muted)}::-webkit-scrollbar-thumb{background:var(--border-color-hover);border-radius:var(--radius-full);border:2px solid var(--background-muted)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}@media (max-width: 768px){.section{padding:3rem 0}.section-title{font-size:1.5rem}.container{padding:0 1rem}}.auth-backdrop[data-v-f0588fad]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:1rem;animation:backdropFadeIn-f0588fad .18s ease-out}.auth-dialog[data-v-f0588fad]{background:var(--background-card, #fff);border-radius:var(--radius-lg, 12px);padding:1.75rem 1.5rem 1.25rem;width:100%;max-width:380px;box-shadow:0 25px 50px -12px #00000040;animation:dialogSlideIn-f0588fad .22s cubic-bezier(.34,1.56,.64,1)}.auth-dialog h3[data-v-f0588fad]{margin:0 0 .5rem;font-size:1.125rem;color:var(--text-primary, #0f172a)}.auth-hint[data-v-f0588fad]{margin:0 0 1.25rem;color:var(--text-secondary, #64748b);font-size:.875rem}.code-inputs[data-v-f0588fad]{display:flex;gap:.6rem;justify-content:center;margin-bottom:1rem}.code-cell[data-v-f0588fad]{width:3rem;height:3.25rem;text-align:center;font-size:1.5rem;font-weight:600;border:1.5px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, 8px);background:var(--background, #fff);color:var(--text-primary, #0f172a);outline:none;transition:border-color .15s,box-shadow .15s,background-color .15s;caret-color:var(--color-primary, #1e40af);font-family:SF Mono,Menlo,Consolas,monospace}.code-cell[data-v-f0588fad]:focus{border-color:var(--color-primary, #1e40af);box-shadow:0 0 0 3px #1e40af2e}.code-cell.is-error[data-v-f0588fad]{border-color:#ef4444;animation:shake-f0588fad .4s ease-in-out}.code-cell.is-error[data-v-f0588fad]:focus{box-shadow:0 0 0 3px #ef444433}.auth-error[data-v-f0588fad]{margin:-.5rem 0 .75rem;color:#ef4444;font-size:.85rem;text-align:center}.auth-actions[data-v-f0588fad]{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.btn-outline[data-v-f0588fad],.btn-primary[data-v-f0588fad]{padding:.5rem 1rem;font-size:.9rem;border-radius:var(--radius-sm, 6px);cursor:pointer;border:1px solid var(--border-color, #e2e8f0);font-weight:500;transition:background-color .15s,color .15s,border-color .15s,opacity .15s}.btn-outline[data-v-f0588fad]{background:var(--background, #fff);color:var(--text-primary, #0f172a)}.btn-outline[data-v-f0588fad]:hover{background:var(--background-secondary, #f1f5f9)}.btn-primary[data-v-f0588fad]{background:var(--color-primary, #1e40af);color:#fff;border-color:var(--color-primary, #1e40af)}.btn-primary[data-v-f0588fad]:hover:not(:disabled){background:#1e3a8a;border-color:#1e3a8a}.btn-primary[data-v-f0588fad]:disabled{opacity:.5;cursor:not-allowed}@keyframes backdropFadeIn-f0588fad{0%{opacity:0}to{opacity:1}}@keyframes dialogSlideIn-f0588fad{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shake-f0588fad{0%,to{transform:translate(0)}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}@media (max-width: 480px){.code-cell[data-v-f0588fad]{width:2.5rem;height:2.75rem;font-size:1.25rem}}.navbar[data-v-6f205ac4]{position:fixed;top:0;left:0;right:0;z-index:var(--z-fixed, 1030);background:transparent;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);border-bottom:1px solid transparent;transition:background .3s ease,box-shadow .3s ease,border-color .3s ease}.navbar.scrolled[data-v-6f205ac4]{background:#ffffffeb;box-shadow:var(--shadow-sm);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color)}.scroll-progress[data-v-6f205ac4]{position:absolute;top:0;left:0;right:0;height:3px;background:transparent;overflow:hidden;z-index:1}.scroll-progress-bar[data-v-6f205ac4]{height:100%;width:0;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-accent) 100%);transition:width .1s linear;box-shadow:0 0 10px #1e40af66;position:relative}.scroll-progress-bar[data-v-6f205ac4]:after{content:"";position:absolute;top:0;right:0;width:60px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:progressShine-6f205ac4 1.8s ease-in-out infinite;pointer-events:none}@keyframes progressShine-6f205ac4{0%{transform:translate(-60px);opacity:0}50%{opacity:1}to{transform:translate(0);opacity:0}}.navbar-container[data-v-6f205ac4]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;transition:padding .3s ease;position:relative}.navbar.scrolled .navbar-container[data-v-6f205ac4]{padding:.75rem 1.5rem}.navbar-brand[data-v-6f205ac4]{font-size:1.5rem;font-weight:700;color:var(--text-primary);position:relative;transition:all .3s ease}.navbar-brand[data-v-6f205ac4]:hover{color:var(--color-primary);transform:scale(1.05)}.navbar-menu[data-v-6f205ac4]{display:flex;list-style:none;gap:2rem;margin:0}.navbar-menu a[data-v-6f205ac4]{color:var(--text-secondary);font-weight:500;position:relative;padding:.5rem 0;transition:all .3s ease}.navbar-menu a[data-v-6f205ac4]:before{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));transition:all .3s ease;transform:translate(-50%)}.navbar-menu a[data-v-6f205ac4]:hover{color:var(--color-primary)}.navbar-menu a[data-v-6f205ac4]:hover:before,.navbar-menu a.active[data-v-6f205ac4]:before{width:100%}.navbar-menu a.active[data-v-6f205ac4]{color:var(--color-primary)}.admin-link[data-v-6f205ac4]{color:var(--color-accent);font-weight:600}.admin-link[data-v-6f205ac4]:hover{color:var(--color-accent)}.navbar-toggle[data-v-6f205ac4]{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:.5rem;z-index:1001}.navbar-toggle span[data-v-6f205ac4]{width:24px;height:3px;background:var(--text-primary);border-radius:2px;transition:all .3s ease;transform-origin:center}@media (max-width: 768px){.navbar-menu[data-v-6f205ac4]{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--background);flex-direction:column;padding:6rem 2rem 2rem;gap:1.5rem;transform:translate(100%);opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-lg);border-bottom:1px solid var(--border-color)}.navbar-menu.active[data-v-6f205ac4]{transform:translate(0);opacity:1;visibility:visible}.navbar-menu li[data-v-6f205ac4]{opacity:0;transform:translate(50px);transition:all .4s ease}.navbar-menu.active li[data-v-6f205ac4]{opacity:1;transform:translate(0)}.navbar-menu.active li[data-v-6f205ac4]:nth-child(1){transition-delay:.1s}.navbar-menu.active li[data-v-6f205ac4]:nth-child(2){transition-delay:.15s}.navbar-menu.active li[data-v-6f205ac4]:nth-child(3){transition-delay:.2s}.navbar-menu.active li[data-v-6f205ac4]:nth-child(4){transition-delay:.25s}.navbar-menu.active li[data-v-6f205ac4]:nth-child(5){transition-delay:.3s}.navbar-menu.active li[data-v-6f205ac4]:nth-child(6){transition-delay:.35s}.navbar-toggle[data-v-6f205ac4]{display:flex}.navbar-toggle.active span[data-v-6f205ac4]:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.navbar-toggle.active span[data-v-6f205ac4]:nth-child(2){opacity:0;transform:scaleX(0)}.navbar-toggle.active span[data-v-6f205ac4]:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}}.hero[data-v-43857254]{min-height:100vh;display:flex;align-items:center;padding-top:6rem;padding-bottom:4rem;background:linear-gradient(135deg,var(--background) 0%,var(--background-secondary) 100%);position:relative;overflow:hidden}.hero[data-v-43857254]:before{content:"";position:absolute;top:-10%;right:-10%;width:480px;height:480px;background:radial-gradient(circle,rgba(30,64,175,.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}.hero[data-v-43857254]:after{content:"";position:absolute;bottom:-20%;left:-10%;width:420px;height:420px;background:radial-gradient(circle,rgba(13,148,136,.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}.hero-content[data-v-43857254]{display:grid;grid-template-columns:1.1fr 1fr;gap:3.5rem;align-items:center;position:relative;z-index:1}.hero-left[data-v-43857254]{display:flex;align-items:center;gap:2rem}.hero-image[data-v-43857254]{flex-shrink:0}.avatar-wrapper[data-v-43857254]{position:relative;display:inline-block}.avatar-placeholder[data-v-43857254]{width:200px;height:200px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-colored);position:relative;overflow:hidden}.avatar-placeholder[data-v-43857254]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);border-radius:50%;pointer-events:none}.avatar-placeholder svg[data-v-43857254]{width:100px;height:100px;position:relative;z-index:1}.online-indicator[data-v-43857254]{position:absolute;bottom:12px;right:12px;width:28px;height:28px;background:#22c55e;border:4px solid var(--background);border-radius:50%;box-shadow:0 0 #22c55e99;animation:onlinePulse-43857254 2s infinite;z-index:2}@keyframes onlinePulse-43857254{0%{box-shadow:0 0 #22c55e99}70%{box-shadow:0 0 0 12px #22c55e00}to{box-shadow:0 0 #22c55e00}}.hero-text[data-v-43857254]{flex:1;min-width:0}.hero-greeting[data-v-43857254]{font-size:1.125rem;color:var(--color-primary);font-weight:600;margin-bottom:.5rem;letter-spacing:.5px}.hero-name[data-v-43857254]{font-size:2.75rem;font-weight:800;color:var(--text-primary);margin-bottom:.5rem;line-height:1.15;background:linear-gradient(135deg,var(--text-primary) 0%,var(--color-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-title[data-v-43857254]{font-size:1.375rem;font-weight:600;color:var(--color-accent);margin-bottom:1.25rem}.hero-tags[data-v-43857254]{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tag[data-v-43857254]{padding:.4rem .9rem;background:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:.8rem;font-weight:500;color:var(--text-secondary);box-shadow:var(--shadow-xs);transition:var(--transition)}.tag[data-v-43857254]:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.hero-actions[data-v-43857254]{display:flex;gap:.75rem;flex-wrap:wrap}.hero-stats[data-v-43857254]{display:grid;grid-template-columns:1fr;gap:1.25rem}.stat-card[data-v-43857254]{position:relative;display:flex;align-items:center;gap:1.25rem;padding:1.5rem 1.75rem;border-radius:var(--radius-xl);background:var(--background-card);border:1px solid var(--border-color);box-shadow:var(--shadow-md);overflow:hidden;transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s ease,border-color .4s ease;cursor:default}.stat-card--primary[data-v-43857254]{background:linear-gradient(135deg,#1e40af,#3b82f6);border-color:transparent;color:var(--text-inverse)}.stat-card--accent[data-v-43857254]{background:linear-gradient(135deg,#0d9488,#14b8a6);border-color:transparent;color:var(--text-inverse)}.stat-card--mixed[data-v-43857254]{background:linear-gradient(135deg,#1e40af,#0d9488);border-color:transparent;color:var(--text-inverse)}.stat-card[data-v-43857254]:hover{transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-2xl);border-color:var(--color-primary)}.stat-card--primary[data-v-43857254]:hover,.stat-card--accent[data-v-43857254]:hover,.stat-card--mixed[data-v-43857254]:hover{box-shadow:0 25px 50px -12px #1e40af59}.stat-decoration[data-v-43857254]{position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:#ffffff1f;transition:transform .5s ease;pointer-events:none}.stat-card:hover .stat-decoration[data-v-43857254]{transform:scale(1.4) rotate(45deg)}.stat-icon[data-v-43857254]{flex-shrink:0;width:56px;height:56px;border-radius:var(--radius-lg);background:#fff3;display:flex;align-items:center;justify-content:center;color:var(--text-inverse);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.stat-icon svg[data-v-43857254]{width:28px;height:28px}.stat-info[data-v-43857254]{flex:1;min-width:0}.stat-value[data-v-43857254]{display:flex;align-items:baseline;gap:.125rem;margin-bottom:.25rem}.stat-number[data-v-43857254]{font-size:2.5rem;font-weight:800;line-height:1;color:var(--text-inverse)}.stat-suffix[data-v-43857254]{font-size:1.5rem;font-weight:700;color:var(--text-inverse);opacity:.9}.stat-label[data-v-43857254]{font-size:1rem;font-weight:600;color:var(--text-inverse);margin-bottom:.125rem}.stat-desc[data-v-43857254]{font-size:.8rem;color:var(--text-inverse);opacity:.85}.hero-bottom[data-v-43857254]{margin-top:3rem;position:relative;z-index:1}.hero-description[data-v-43857254]{background:var(--background-card);border-radius:var(--radius-xl);padding:2rem;border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.hero-description p[data-v-43857254]{font-size:1rem;color:var(--text-secondary);line-height:1.9;margin-bottom:.75rem}.hero-description p[data-v-43857254]:last-child{margin-bottom:0}.hero-description p strong[data-v-43857254]{color:var(--text-primary);font-weight:700}.hero-description p em[data-v-43857254]{color:var(--color-primary);font-style:normal;font-weight:600}@media (max-width: 1024px){.hero-content[data-v-43857254]{grid-template-columns:1fr;gap:3rem}.hero-left[data-v-43857254]{justify-content:center;text-align:center;flex-direction:column;align-items:center}.hero-tags[data-v-43857254],.hero-actions[data-v-43857254]{justify-content:center}}@media (max-width: 768px){.hero[data-v-43857254]{padding-top:5rem;min-height:auto}.hero-content[data-v-43857254]{gap:2.5rem}.hero-left[data-v-43857254]{flex-direction:column}.avatar-placeholder[data-v-43857254]{width:160px;height:160px}.avatar-placeholder svg[data-v-43857254]{width:80px;height:80px}.hero-name[data-v-43857254]{font-size:2.25rem}.hero-title[data-v-43857254]{font-size:1.125rem}.stat-card[data-v-43857254]{padding:1.25rem 1.5rem;gap:1rem}.stat-icon[data-v-43857254]{width:48px;height:48px}.stat-icon svg[data-v-43857254]{width:24px;height:24px}.stat-number[data-v-43857254]{font-size:2rem}.stat-suffix[data-v-43857254]{font-size:1.25rem}.hero-description[data-v-43857254]{padding:1.5rem}}@media (max-width: 480px){.hero-name[data-v-43857254]{font-size:1.875rem}.hero-actions[data-v-43857254]{flex-direction:column;width:100%}.hero-actions .btn[data-v-43857254]{width:100%}.stat-card[data-v-43857254]{padding:1rem 1.25rem}.stat-number[data-v-43857254]{font-size:1.75rem}.online-indicator[data-v-43857254]{width:24px;height:24px;border-width:3px}}.skill-bar[data-v-32227b29]{margin-bottom:1.5rem}.skill-header[data-v-32227b29]{display:flex;justify-content:space-between;margin-bottom:.5rem}.skill-name[data-v-32227b29]{font-weight:600;color:var(--text-primary)}.skill-percentage[data-v-32227b29]{font-weight:600;color:var(--primary-color)}.skill-track[data-v-32227b29]{height:10px;background:var(--background-secondary);border-radius:5px;overflow:hidden}.skill-progress[data-v-32227b29]{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));border-radius:5px;width:0;transition:width 1.2s cubic-bezier(.22,1,.36,1)}.skills[data-v-34dcc5ac]{background:var(--background-secondary)}.section-subtitle[data-v-34dcc5ac]{color:var(--text-secondary);margin-top:.5rem;margin-bottom:2.5rem;font-size:1rem}.skills-cloud[data-v-34dcc5ac]{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;justify-content:center;padding:2.5rem 1.5rem;background:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:3rem;min-height:180px;line-height:1.5}.skill-cloud-tag[data-v-34dcc5ac]{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .9rem;background:var(--background-muted);color:var(--text-primary);border-radius:var(--radius-full);font-weight:600;border:1.5px solid transparent;cursor:default;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background-color .3s ease,color .3s ease,box-shadow .3s ease,border-color .3s ease;position:relative;white-space:nowrap;-webkit-user-select:none;user-select:none}.skill-cloud-tag[data-v-34dcc5ac]:hover,.skill-cloud-tag[data-v-34dcc5ac]:focus{background:var(--color-primary);color:var(--text-inverse);transform:scale(1.15);box-shadow:0 8px 20px -4px #1e40af73;border-color:var(--color-primary);outline:none}.skill-cloud-tag:hover .skill-level-dot[data-v-34dcc5ac],.skill-cloud-tag:focus .skill-level-dot[data-v-34dcc5ac]{background:var(--text-inverse)}.skill-level-dot[data-v-34dcc5ac]{width:8px;height:8px;border-radius:50%;background:var(--color-primary);flex-shrink:0;transition:background-color .3s ease}.skill-level-dot[data-level=high][data-v-34dcc5ac]{background:var(--color-primary);box-shadow:0 0 0 2px #1e40af2e}.skill-level-dot[data-level=mid][data-v-34dcc5ac]{background:var(--color-accent);box-shadow:0 0 0 2px #0d94882e}.skill-level-dot[data-level=low][data-v-34dcc5ac]{background:var(--text-light);box-shadow:0 0 0 2px #94a3b82e}.skills-sections[data-v-34dcc5ac]{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.skills-subsection[data-v-34dcc5ac]{background:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:1.75rem;box-shadow:var(--shadow-sm)}.column-title[data-v-34dcc5ac]{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--background-muted)}.title-icon[data-v-34dcc5ac]{font-size:1.25rem}.tags-list[data-v-34dcc5ac]{display:flex;flex-wrap:wrap;gap:.6rem}.skill-tag[data-v-34dcc5ac],.industry-tag[data-v-34dcc5ac]{padding:.55rem 1.1rem;border-radius:var(--radius-md);font-weight:500;font-size:.9rem;transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease,color .3s ease;cursor:default}.skill-tag[data-v-34dcc5ac]{background:var(--background-muted);color:var(--text-primary);border:1px solid var(--border-color)}.skill-tag[data-v-34dcc5ac]:hover{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary);transform:translateY(-2px) scale(1.05);box-shadow:0 6px 14px -4px #1e40af66}.industry-tag[data-v-34dcc5ac]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.industry-tag[data-v-34dcc5ac]:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 6px 14px -4px #0d948866}@media (max-width: 968px){.skills-sections[data-v-34dcc5ac]{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 768px){.skills-cloud[data-v-34dcc5ac]{padding:1.5rem 1rem;min-height:auto}.skills-subsection[data-v-34dcc5ac]{padding:1.25rem}}@media (max-width: 480px){.tags-list[data-v-34dcc5ac]{gap:.5rem}.skill-tag[data-v-34dcc5ac],.industry-tag[data-v-34dcc5ac]{padding:.45rem .9rem;font-size:.85rem}}.timeline[data-v-d1982689]{position:relative;padding-left:2.5rem}.timeline[data-v-d1982689]:before{content:"";position:absolute;left:.875rem;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--color-primary),var(--color-accent));border-radius:2px;box-shadow:0 0 8px #1e40af40}.timeline-item[data-v-d1982689]{position:relative;margin-bottom:2.25rem;transition:transform .4s ease}.timeline-item[data-v-d1982689]:last-child{margin-bottom:0}.timeline-item[data-v-d1982689]:hover{transform:translate(8px)}.timeline-marker[data-v-d1982689]{position:absolute;left:-2.5rem;top:1.5rem;width:28px;height:28px;background:var(--background);border:3px solid var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1;box-shadow:0 0 0 4px var(--background);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.marker-dot[data-v-d1982689]{width:10px;height:10px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));border-radius:50%;transition:transform .3s ease}.timeline-item:hover .timeline-marker[data-v-d1982689]{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--background),0 0 16px #0d948880}.timeline-item:hover .marker-dot[data-v-d1982689]{transform:scale(1.3)}.timeline-content[data-v-d1982689]{background:var(--background-card);transition:box-shadow .3s ease,transform .3s ease;border-left:3px solid transparent}.timeline-item:hover .timeline-content[data-v-d1982689]{box-shadow:var(--shadow-xl);border-left-color:var(--color-primary)}.timeline-header[data-v-d1982689]{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.timeline-company-block[data-v-d1982689]{display:flex;align-items:center;gap:.85rem;flex:1;min-width:0}.company-logo[data-v-d1982689]{flex-shrink:0;width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-inverse);font-weight:700;font-size:1rem;box-shadow:var(--shadow-sm);letter-spacing:-.5px}.logo-text[data-v-d1982689]{text-shadow:0 1px 2px rgba(0,0,0,.15)}.timeline-title[data-v-d1982689]{font-size:1.25rem;font-weight:700;color:var(--text-primary);transition:color .3s ease;margin:0}.timeline-item:hover .timeline-title[data-v-d1982689]{color:var(--color-primary)}.timeline-date[data-v-d1982689]{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--text-light);background:var(--background-muted);padding:.3rem .75rem;border-radius:var(--radius-full);white-space:nowrap}.timeline-date svg[data-v-d1982689]{width:14px;height:14px}.timeline-position[data-v-d1982689]{display:inline-flex;align-items:center;gap:.4rem;font-size:1rem;font-weight:700;color:var(--color-primary);margin:0 0 .5rem;background:#1e40af14;padding:.3rem .85rem;border-radius:var(--radius-sm)}.position-icon[data-v-d1982689]{font-size:1rem}.timeline-major[data-v-d1982689]{font-size:.95rem;font-weight:600;color:var(--color-accent);margin-bottom:.5rem}.timeline-description[data-v-d1982689]{color:var(--text-secondary);line-height:1.7;margin:.5rem 0 0}.timeline-keywords[data-v-d1982689]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--border-color)}.keyword-tag[data-v-d1982689]{display:inline-flex;align-items:center;padding:.3rem .75rem;font-size:.75rem;font-weight:600;color:var(--text-secondary);background:var(--background-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all .3s ease;cursor:default}.timeline-item:hover .keyword-tag[data-v-d1982689]{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary);transform:translateY(-2px)}@media (max-width: 768px){.timeline[data-v-d1982689]{padding-left:2rem}.timeline[data-v-d1982689]:before{left:.625rem}.timeline-marker[data-v-d1982689]{left:-2rem;width:22px;height:22px}.timeline-header[data-v-d1982689]{flex-direction:column;align-items:flex-start}.company-logo[data-v-d1982689]{width:40px;height:40px;font-size:.9rem}.timeline-title[data-v-d1982689]{font-size:1.1rem}}.experience[data-v-110ac6d6]{background:var(--background);position:relative}.section-subtitle[data-v-110ac6d6]{color:var(--text-secondary);margin-top:.5rem;margin-bottom:2.5rem;font-size:1rem}.project-card[data-v-704d7071]{margin-bottom:1.75rem;position:relative;transform:translateY(0);transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s ease,border-color .4s ease;border-left:4px solid transparent;display:flex;flex-direction:column;gap:1.25rem}.project-card[data-v-704d7071]:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-left-color:var(--color-primary)}.project-header[data-v-704d7071]{display:flex;flex-direction:column;gap:.6rem}.project-meta-top[data-v-704d7071]{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.project-year[data-v-704d7071]{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--text-light);background:var(--background-muted);padding:.25rem .75rem;border-radius:var(--radius-full)}.year-icon[data-v-704d7071]{display:inline-flex;width:14px;height:14px}.year-icon svg[data-v-704d7071]{width:14px;height:14px}.project-industry-tag[data-v-704d7071]{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:700;color:var(--color-primary);background:#1e40af1a;border-radius:var(--radius-full);letter-spacing:.3px}.project-title[data-v-704d7071]{font-size:1.375rem;font-weight:700;color:var(--text-primary);transition:color .3s ease;line-height:1.3}.project-card:hover .project-title[data-v-704d7071]{color:var(--color-primary)}.project-role[data-v-704d7071]{align-self:flex-start;font-size:.8rem;font-weight:700;color:var(--text-inverse);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);padding:.3rem .85rem;border-radius:var(--radius-sm);white-space:nowrap;letter-spacing:.3px;transform:scale(1);transition:transform .3s ease,box-shadow .3s ease}.project-card:hover .project-role[data-v-704d7071]{transform:scale(1.05);box-shadow:0 4px 12px -2px #1e40af66}.project-body[data-v-704d7071]{display:flex;flex-direction:column;gap:1rem}.project-description[data-v-704d7071]{color:var(--text-secondary);line-height:1.8;margin:0;font-size:.95rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;transition:-webkit-line-clamp .3s ease}.project-card:hover .project-description[data-v-704d7071]{-webkit-line-clamp:unset;display:block}.project-factories[data-v-704d7071]{display:flex;flex-direction:column;gap:.5rem}.factories-label[data-v-704d7071]{font-weight:600;color:var(--text-primary);font-size:.8rem}.factories-list[data-v-704d7071]{display:flex;flex-wrap:wrap;gap:.4rem}.factory-tag[data-v-704d7071]{font-size:.75rem;padding:.25rem .65rem;background:var(--background-muted);border-radius:var(--radius-sm);color:var(--text-secondary);transition:all .3s ease}.project-card:hover .factory-tag[data-v-704d7071]{background:var(--color-accent);color:var(--text-inverse);transform:translateY(-2px)}.project-highlights h4[data-v-704d7071]{font-size:.85rem;font-weight:700;color:var(--text-primary);margin:0 0 .6rem;display:flex;align-items:center;gap:.4rem}.project-highlights h4[data-v-704d7071]:before{content:"";display:inline-block;width:3px;height:14px;background:linear-gradient(to bottom,var(--color-primary),var(--color-accent));border-radius:2px}.project-highlights ul[data-v-704d7071]{list-style:none;padding-left:0;margin:0}.project-highlights li[data-v-704d7071]{color:var(--text-secondary);padding-left:1.25rem;position:relative;margin-bottom:.5rem;line-height:1.7;font-size:.9rem;transition:transform .3s ease,color .3s ease}.project-card:hover .project-highlights li[data-v-704d7071]{transform:translate(4px);color:var(--text-primary)}.project-highlights li[data-v-704d7071]:last-child{margin-bottom:0}.project-highlights li[data-v-704d7071]:before{content:"▹";position:absolute;left:0;color:var(--color-primary);font-size:1rem;font-weight:700;transition:transform .3s ease}.project-card:hover .project-highlights li[data-v-704d7071]:before{transform:scale(1.3)}.toggle-highlights[data-v-704d7071]{margin-top:.5rem;display:inline-flex;align-items:center;gap:.25rem;background:none;border:none;color:var(--color-primary);font-weight:600;font-size:.85rem;cursor:pointer;padding:.25rem 0;transition:color .25s ease}.toggle-highlights[data-v-704d7071]:hover{color:var(--color-primary-dark, #1e3a8a)}.toggle-icon[data-v-704d7071]{transition:transform .3s ease;display:inline-block}.toggle-icon.rotated[data-v-704d7071]{transform:rotate(180deg)}.project-footer[data-v-704d7071]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-top:1rem;border-top:1px dashed var(--border-color)}.project-modules[data-v-704d7071]{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;flex:1;min-width:0}.modules-label[data-v-704d7071]{font-weight:700;color:var(--text-primary);font-size:.8rem;white-space:nowrap}.modules-list[data-v-704d7071]{display:flex;flex-wrap:wrap;gap:.4rem}.module-tag[data-v-704d7071]{font-size:.75rem;font-weight:600;padding:.3rem .7rem;background:var(--background-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);transition:all .3s ease}.project-card:hover .module-tag[data-v-704d7071]{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary);transform:translateY(-2px)}.project-action[data-v-704d7071]{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:var(--color-primary);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-weight:600;font-size:.85rem;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease,background .3s ease;white-space:nowrap}.project-action svg[data-v-704d7071]{width:14px;height:14px;transition:transform .3s ease}.project-action[data-v-704d7071]:hover{background:var(--color-primary-dark, #1e3a8a);transform:translate(4px);box-shadow:0 6px 14px -4px #1e40af80}.project-action:hover svg[data-v-704d7071]{transform:translate(2px)}.project-action[data-v-704d7071]:focus-visible{outline:3px solid rgba(30,64,175,.35);outline-offset:2px}@media (max-width: 768px){.project-card[data-v-704d7071]{border-left-width:3px}.project-title[data-v-704d7071]{font-size:1.2rem}.project-footer[data-v-704d7071]{flex-direction:column;align-items:flex-start}.project-action[data-v-704d7071]{width:100%;justify-content:center}}.projects[data-v-b5bdb966]{background:var(--background-secondary)}.section-subtitle[data-v-b5bdb966]{color:var(--text-secondary);margin-top:.5rem;margin-bottom:2rem;font-size:1rem}.filter-chips[data-v-b5bdb966]{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:2.5rem}.chip[data-v-b5bdb966]{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;background:var(--background-card);color:var(--text-secondary);border:1.5px solid var(--border-color);border-radius:var(--radius-full);font-weight:500;font-size:.875rem;cursor:pointer;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease;white-space:nowrap}.chip[data-v-b5bdb966]:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.chip[data-v-b5bdb966]:focus-visible{outline:3px solid rgba(30,64,175,.35);outline-offset:2px}.chip.active[data-v-b5bdb966]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);color:var(--text-inverse);border-color:transparent;box-shadow:0 6px 16px -6px #1e40af80}.chip.active .chip-count[data-v-b5bdb966]{background:#ffffff40;color:var(--text-inverse)}.chip-icon[data-v-b5bdb966]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.chip-icon svg[data-v-b5bdb966]{width:16px;height:16px}.chip-label[data-v-b5bdb966]{font-weight:600}.chip-count[data-v-b5bdb966]{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 .4rem;background:var(--background-muted);color:var(--text-secondary);border-radius:var(--radius-full);font-size:.75rem;font-weight:700;transition:background .25s ease,color .25s ease}.chip:hover .chip-count[data-v-b5bdb966]{background:var(--color-primary);color:var(--text-inverse)}.projects-list[data-v-b5bdb966]{margin-top:1.5rem}@keyframes cardFadeInUp-b5bdb966{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.card-animated[data-v-b5bdb966]{animation:cardFadeInUp-b5bdb966 .4s ease-out both;animation-delay:calc(var(--card-index, 0) * 60ms)}.empty-state[data-v-b5bdb966]{text-align:center;padding:3rem 1rem;color:var(--text-light);font-size:1rem;background:var(--background-card);border:1px dashed var(--border-color);border-radius:var(--radius-lg)}@media (max-width: 768px){.filter-chips[data-v-b5bdb966]{gap:.5rem}.chip[data-v-b5bdb966]{padding:.4rem .85rem;font-size:.8rem}.chip-count[data-v-b5bdb966]{min-width:20px;height:20px;font-size:.7rem}}.education[data-v-78420cc8]{background:var(--background)}.certifications[data-v-6c688803]{background:var(--background-secondary)}.certifications-grid[data-v-6c688803]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.certification-card[data-v-6c688803]{text-align:center;padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem;transform:translateY(0) scale(1);transition:all .3s ease}.certification-card[data-v-6c688803]:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-lg)}.cert-icon[data-v-6c688803]{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-md);transition:transform .3s ease,box-shadow .3s ease}.certification-card:hover .cert-icon[data-v-6c688803]{transform:scale(1.1) rotate(5deg);box-shadow:var(--shadow-lg)}.cert-icon svg[data-v-6c688803]{width:32px;height:32px}.cert-title[data-v-6c688803]{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0;transition:color .3s ease}.certification-card:hover .cert-title[data-v-6c688803]{color:var(--primary-color)}@media (max-width: 768px){.certifications-grid[data-v-6c688803]{grid-template-columns:1fr}}.app{min-height:100vh;display:flex;flex-direction:column}main{flex:1}main:focus{outline:none}.footer{background:var(--background-secondary);padding:2rem 0;text-align:center;border-top:1px solid var(--border-color)}.footer p{color:var(--text-secondary);margin:0;font-size:.9rem}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.skeleton-shimmer{background:linear-gradient(90deg,var(--background-muted) 0%,rgba(255,255,255,.5) 50%,var(--background-muted) 100%);background-size:800px 100%;animation:shimmer 1.5s linear infinite;border-radius:var(--radius-md)}.skeleton-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--background);overflow:hidden;padding-top:60px}.skeleton-navbar{position:fixed;top:0;left:0;right:0;height:60px;background:var(--background-secondary);border-bottom:1px solid var(--border-color);z-index:10000}.skeleton-container{padding:2rem 1.5rem}.skeleton-hero{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 0;margin-bottom:2rem}.skeleton-circle{width:180px;height:180px;border-radius:50%}.skeleton-title{height:36px;width:60%;max-width:400px}.skeleton-subtitle{height:22px;width:40%;max-width:280px}.skeleton-line{height:14px;width:80%;max-width:600px}.skeleton-line.short{width:60%}.skeleton-section{padding:2rem 0}.skeleton-section .skeleton-title{margin:0 auto 1.5rem;width:200px;height:28px}.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.skeleton-card{height:180px;width:100%}.skeleton-fade-enter-active,.skeleton-fade-leave-active{transition:opacity .4s ease}.skeleton-fade-enter-from,.skeleton-fade-leave-to{opacity:0}.back-to-top{position:fixed;right:2rem;bottom:2rem;z-index:var(--z-fixed, 1030);width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);color:var(--text-inverse);border:none;border-radius:50%;cursor:pointer;box-shadow:0 8px 20px -4px #1e40af80;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}.back-to-top:hover{transform:translateY(-4px) scale(1.08);box-shadow:0 12px 24px -4px #1e40af99}.back-to-top:focus-visible{outline:3px solid rgba(30,64,175,.4);outline-offset:3px}.back-to-top:active{transform:translateY(0) scale(.95)}.back-to-top svg{width:22px;height:22px}.back-top-fade-enter-active,.back-top-fade-leave-active{transition:opacity .3s ease,transform .3s ease}.back-top-fade-enter-from,.back-top-fade-leave-to{opacity:0;transform:translateY(20px)}@media (max-width: 768px){.back-to-top{right:1rem;bottom:1rem;width:44px;height:44px}.back-to-top svg{width:20px;height:20px}}@media (max-width: 480px){.skeleton-grid{grid-template-columns:1fr}.skeleton-circle{width:140px;height:140px}}.admin-sidebar[data-v-41f2fceb]{width:240px;flex-shrink:0;background:var(--background-card);border-right:1px solid var(--border-color);padding:1.5rem 0;height:calc(100vh - 64px);position:sticky;top:64px;overflow-y:auto}.sidebar-header[data-v-41f2fceb]{padding:0 1.25rem 1rem}.sidebar-title[data-v-41f2fceb]{font-size:.75rem;text-transform:uppercase;color:var(--text-light);margin:0;letter-spacing:1px}.sidebar-nav[data-v-41f2fceb]{display:flex;flex-direction:column;gap:.25rem}.sidebar-item[data-v-41f2fceb]{display:flex;align-items:center;gap:.75rem;padding:.65rem 1.25rem;background:none;border:none;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;text-align:left;transition:background .2s,color .2s;border-left:3px solid transparent}.sidebar-item[data-v-41f2fceb]:hover{background:var(--background-muted);color:var(--text-primary)}.sidebar-item.active[data-v-41f2fceb]{background:var(--background-muted);color:var(--color-primary);border-left-color:var(--color-primary)}.sidebar-icon[data-v-41f2fceb]{display:inline-flex;width:18px;height:18px}.sidebar-icon svg[data-v-41f2fceb]{width:18px;height:18px}.sidebar-label[data-v-41f2fceb]{flex:1}@media (max-width: 768px){.admin-sidebar[data-v-41f2fceb]{width:100%;height:auto;position:static;border-right:none;border-bottom:1px solid var(--border-color);padding:.5rem 0}.sidebar-nav[data-v-41f2fceb]{flex-direction:row;overflow-x:auto}.sidebar-item[data-v-41f2fceb]{white-space:nowrap;border-left:none;border-bottom:3px solid transparent}.sidebar-item.active[data-v-41f2fceb]{border-left:none;border-bottom-color:var(--color-primary)}}.admin-toolbar[data-v-17d99ea1]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--background-card);border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:.75rem}.toolbar-info[data-v-17d99ea1]{font-size:.85rem}.draft-indicator[data-v-17d99ea1]{display:inline-flex;align-items:center;gap:.5rem;color:#d97706;font-weight:600}.draft-dot[data-v-17d99ea1]{width:8px;height:8px;background:#d97706;border-radius:50%}.clean-indicator[data-v-17d99ea1]{color:#10b981;font-weight:500}.toolbar-actions[data-v-17d99ea1]{display:flex;gap:.5rem;flex-wrap:wrap}.btn[data-v-17d99ea1]{padding:.5rem 1rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.btn-primary[data-v-17d99ea1]{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}.btn-primary[data-v-17d99ea1]:hover{background:var(--color-primary-dark, #1e3a8a)}.btn-outline[data-v-17d99ea1]{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-outline[data-v-17d99ea1]:hover{background:var(--background-muted);border-color:var(--color-primary);color:var(--color-primary)}.deploy-guide[data-v-3670bb28]{background:#1e40af0f;border:1px solid rgba(30,64,175,.2);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1.5rem}.deploy-guide summary[data-v-3670bb28]{cursor:pointer;font-weight:600;color:var(--color-primary);-webkit-user-select:none;user-select:none}.deploy-guide ol[data-v-3670bb28]{margin:.75rem 0 .5rem 1.5rem;padding:0;font-size:.9rem;color:var(--text-secondary);line-height:1.8}.deploy-guide code[data-v-3670bb28]{background:var(--background-muted);padding:.1rem .4rem;border-radius:3px;font-size:.85em;color:var(--text-primary)}.note[data-v-3670bb28]{margin:.5rem 0 0;font-size:.85rem;color:var(--text-light);font-style:italic}.form-section h2[data-v-c3debe2f]{margin-top:0}.hint[data-v-c3debe2f]{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem}.form-grid[data-v-c3debe2f]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.field[data-v-c3debe2f]{display:flex;flex-direction:column;gap:.4rem}.field span[data-v-c3debe2f]{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.field input[data-v-c3debe2f]{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.95rem;background:var(--background);color:var(--text-primary)}.field input[data-v-c3debe2f]:focus{outline:2px solid var(--color-primary);outline-offset:1px}@media (max-width: 768px){.form-grid[data-v-c3debe2f]{grid-template-columns:1fr}}.hint[data-v-26ca7884]{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.summary-textarea[data-v-26ca7884]{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.95rem;font-family:inherit;background:var(--background);color:var(--text-primary);resize:vertical}.char-count[data-v-26ca7884]{margin-top:.5rem;text-align:right;color:var(--text-light);font-size:.8rem}.tag-editor[data-v-4fa26a0b]{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.tag[data-v-4fa26a0b]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .4rem .3rem .6rem;background:var(--background-muted);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.85rem}.remove[data-v-4fa26a0b]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1.1rem;height:1.1rem;margin-left:.1rem;padding:0;background:transparent;border:none;border-radius:50%;cursor:pointer;color:var(--text-light);font-size:.95rem;line-height:1;transition:color .15s ease,background-color .15s ease}.remove[data-v-4fa26a0b]:hover{color:#ef4444;background-color:#ef44441f}.remove[data-v-4fa26a0b]:focus-visible{outline:2px solid #ef4444;outline-offset:1px}input[data-v-4fa26a0b]{padding:.3rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.85rem;min-width:120px;background:var(--background);color:var(--text-primary)}.form-section h2[data-v-d9ba51a7]{margin-top:0}h3[data-v-d9ba51a7]{margin-top:1.5rem;font-size:1rem;color:var(--text-primary)}.row[data-v-d9ba51a7]{display:flex;gap:.5rem;margin-bottom:.5rem;align-items:center}.row .grow[data-v-d9ba51a7]{flex:1}.row .level-input[data-v-d9ba51a7]{width:70px}.row .suffix[data-v-d9ba51a7]{color:var(--text-light)}.row input[data-v-d9ba51a7]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--background);color:var(--text-primary)}.btn-add[data-v-d9ba51a7],.btn-danger[data-v-d9ba51a7]{padding:.4rem .75rem;font-size:.85rem;border-radius:var(--radius-sm);cursor:pointer;margin-top:.5rem;border:1px solid var(--border-color);background:var(--background);color:var(--text-primary)}.btn-add[data-v-d9ba51a7]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-danger[data-v-d9ba51a7]{color:#ef4444}.btn-danger[data-v-d9ba51a7]:hover{background:#ef4444;color:#fff;border-color:#ef4444}.dialog-backdrop[data-v-a2d8b658]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#00000080;display:flex;align-items:center;justify-content:center;padding:1rem}.dialog[data-v-a2d8b658]{background:var(--background-card);border-radius:var(--radius-lg);width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-2xl)}.dialog-header[data-v-a2d8b658]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.dialog-header h3[data-v-a2d8b658]{margin:0}.close[data-v-a2d8b658]{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-light)}.dialog-body[data-v-a2d8b658]{padding:1.25rem;overflow-y:auto;flex:1}.dialog-footer[data-v-a2d8b658]{padding:1rem 1.25rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:.5rem}.grid-2[data-v-a2d8b658]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.75rem}label[data-v-a2d8b658]{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}label.block[data-v-a2d8b658]{display:block}label span[data-v-a2d8b658],.label[data-v-a2d8b658]{font-size:.8rem;color:var(--text-secondary);font-weight:600}input[data-v-a2d8b658],textarea[data-v-a2d8b658]{padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:inherit;background:var(--background);color:var(--text-primary);width:100%;box-sizing:border-box;resize:vertical}.highlight-row[data-v-a2d8b658]{display:flex;gap:.5rem;align-items:flex-start;margin-bottom:.5rem}.highlight-row textarea[data-v-a2d8b658]{flex:1}.btn-add[data-v-a2d8b658],.btn-danger[data-v-a2d8b658],.btn-outline[data-v-a2d8b658],.btn-primary[data-v-a2d8b658]{padding:.4rem .75rem;font-size:.875rem;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-color);background:var(--background);color:var(--text-primary)}.btn-add.small[data-v-a2d8b658],.btn-danger.small[data-v-a2d8b658]{padding:.25rem .5rem;font-size:.8rem}.btn-primary[data-v-a2d8b658]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary[data-v-a2d8b658]:hover{background:var(--color-primary-dark, #1e3a8a)}.btn-outline[data-v-a2d8b658]{background:transparent}.btn-danger[data-v-a2d8b658]{color:#ef4444}.btn-danger[data-v-a2d8b658]:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media (max-width: 768px){.grid-2[data-v-a2d8b658]{grid-template-columns:1fr}}.form-section h2[data-v-3ef0098f]{margin-top:0}.hint[data-v-3ef0098f]{color:var(--text-secondary);font-size:.875rem}.header-actions[data-v-3ef0098f]{margin-bottom:1rem}.btn-primary[data-v-3ef0098f]{padding:.5rem 1rem;background:var(--color-primary);color:#fff;border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;font-weight:600}.btn-primary[data-v-3ef0098f]:hover{background:var(--color-primary-dark, #1e3a8a)}.project-list[data-v-3ef0098f]{list-style:none;padding:0;margin:0}.project-row[data-v-3ef0098f]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--background);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:.5rem}.title[data-v-3ef0098f]{font-weight:600;color:var(--text-primary)}.meta[data-v-3ef0098f]{color:var(--text-light);font-size:.85rem;display:flex;gap:.4rem;flex-wrap:wrap}.actions[data-v-3ef0098f]{display:flex;gap:.5rem}.actions button[data-v-3ef0098f]{padding:.3rem .75rem;font-size:.85rem;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-color);background:var(--background-card);color:var(--text-primary)}.actions .btn-danger[data-v-3ef0098f]{color:#ef4444}.actions .btn-danger[data-v-3ef0098f]:hover{background:#ef4444;color:#fff;border-color:#ef4444}.form-section h2[data-v-d6c860d3]{margin-top:0}.card-row[data-v-d6c860d3]{background:var(--background);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.row-2col[data-v-d6c860d3]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}label[data-v-d6c860d3]{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.5rem}label span[data-v-d6c860d3]{font-size:.8rem;color:var(--text-secondary);font-weight:600}label.block[data-v-d6c860d3]{display:block}input[data-v-d6c860d3],textarea[data-v-d6c860d3]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:inherit;background:var(--background-card);color:var(--text-primary);width:100%;box-sizing:border-box;resize:vertical}.btn-add[data-v-d6c860d3],.btn-danger[data-v-d6c860d3]{padding:.4rem .75rem;font-size:.85rem;border-radius:var(--radius-sm);cursor:pointer;margin-top:.5rem;border:1px solid var(--border-color);background:var(--background);color:var(--text-primary)}.btn-add[data-v-d6c860d3]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-danger[data-v-d6c860d3]{color:#ef4444}.btn-danger[data-v-d6c860d3]:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media (max-width: 768px){.row-2col[data-v-d6c860d3]{grid-template-columns:1fr}}.form-section h2[data-v-ae2b6dea]{margin-top:0}.card-row[data-v-ae2b6dea]{background:var(--background);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.row-2col[data-v-ae2b6dea]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}label[data-v-ae2b6dea]{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.5rem}label span[data-v-ae2b6dea]{font-size:.8rem;color:var(--text-secondary);font-weight:600}label.block[data-v-ae2b6dea]{display:block}input[data-v-ae2b6dea],textarea[data-v-ae2b6dea]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:inherit;background:var(--background-card);color:var(--text-primary);width:100%;box-sizing:border-box;resize:vertical}.btn-add[data-v-ae2b6dea],.btn-danger[data-v-ae2b6dea]{padding:.4rem .75rem;font-size:.85rem;border-radius:var(--radius-sm);cursor:pointer;margin-top:.5rem;border:1px solid var(--border-color);background:var(--background);color:var(--text-primary)}.btn-add[data-v-ae2b6dea]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-danger[data-v-ae2b6dea]{color:#ef4444}.btn-danger[data-v-ae2b6dea]:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media (max-width: 768px){.row-2col[data-v-ae2b6dea]{grid-template-columns:1fr}}.form-section h2[data-v-9aa44512]{margin-top:0}.card-row[data-v-9aa44512]{background:var(--background);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.row-2col[data-v-9aa44512]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}label[data-v-9aa44512]{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.5rem}label span[data-v-9aa44512]{font-size:.8rem;color:var(--text-secondary);font-weight:600}label.block[data-v-9aa44512]{display:block}input[data-v-9aa44512],textarea[data-v-9aa44512]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:inherit;background:var(--background-card);color:var(--text-primary);width:100%;box-sizing:border-box;resize:vertical}.btn-add[data-v-9aa44512],.btn-danger[data-v-9aa44512]{padding:.4rem .75rem;font-size:.85rem;border-radius:var(--radius-sm);cursor:pointer;margin-top:.5rem;border:1px solid var(--border-color);background:var(--background);color:var(--text-primary)}.btn-add[data-v-9aa44512]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-danger[data-v-9aa44512]{color:#ef4444}.btn-danger[data-v-9aa44512]:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media (max-width: 768px){.row-2col[data-v-9aa44512]{grid-template-columns:1fr}}.form-section h2[data-v-0d525c99]{margin-top:0}.hint[data-v-0d525c99]{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem}.card-row[data-v-0d525c99]{background:var(--background);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.row-3col[data-v-0d525c99]{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;align-items:end}label[data-v-0d525c99]{display:flex;flex-direction:column;gap:.3rem}label.check[data-v-0d525c99]{flex-direction:row;align-items:center;gap:.4rem}label span[data-v-0d525c99]{font-size:.8rem;color:var(--text-secondary);font-weight:600}input[data-v-0d525c99]{padding:.4rem .6rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--background-card);color:var(--text-primary)}.btn-add[data-v-0d525c99],.btn-danger[data-v-0d525c99]{padding:.4rem .75rem;font-size:.85rem;border-radius:var(--radius-sm);cursor:pointer;margin-top:.5rem;border:1px solid var(--border-color);background:var(--background);color:var(--text-primary)}.btn-add[data-v-0d525c99]:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-danger[data-v-0d525c99]{color:#ef4444}.btn-danger[data-v-0d525c99]:hover{background:#ef4444;color:#fff;border-color:#ef4444}@media (max-width: 768px){.row-3col[data-v-0d525c99]{grid-template-columns:1fr}}.toast-container[data-v-87d0d4f6]{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.toast[data-v-87d0d4f6]{pointer-events:auto;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;min-width:240px;max-width:360px;background:var(--background-card);color:var(--text-primary);border-radius:var(--radius-md);border-left:4px solid var(--color-primary);box-shadow:var(--shadow-lg);font-size:.9rem}.toast--success[data-v-87d0d4f6]{border-left-color:#10b981}.toast--error[data-v-87d0d4f6]{border-left-color:#ef4444}.toast--info[data-v-87d0d4f6]{border-left-color:var(--color-primary)}.toast-message[data-v-87d0d4f6]{flex:1}.toast-close[data-v-87d0d4f6]{background:none;border:none;font-size:1.25rem;color:var(--text-light);cursor:pointer;padding:0 .25rem;line-height:1}.toast-close[data-v-87d0d4f6]:hover{color:var(--text-primary)}.toast-fade-enter-active[data-v-87d0d4f6],.toast-fade-leave-active[data-v-87d0d4f6]{transition:all .3s ease}.toast-fade-enter-from[data-v-87d0d4f6],.toast-fade-leave-to[data-v-87d0d4f6]{opacity:0;transform:translate(20px)}.admin-page[data-v-ca48cf2c]{min-height:100vh;background:var(--background)}.admin-header[data-v-ca48cf2c]{background:var(--background-secondary);padding:1.25rem 0;border-bottom:1px solid var(--border-color)}.admin-header h1[data-v-ca48cf2c]{margin:.25rem 0;font-size:1.5rem;color:var(--text-primary)}.admin-header .subtitle[data-v-ca48cf2c]{margin:0;color:var(--text-secondary);font-size:.875rem}.back-link[data-v-ca48cf2c]{display:inline-block;margin-bottom:.5rem;color:var(--color-primary);text-decoration:none;font-size:.875rem;font-weight:600}.back-link[data-v-ca48cf2c]:hover{text-decoration:underline}.admin-body[data-v-ca48cf2c]{padding:1.5rem 0 3rem}.admin-container[data-v-ca48cf2c]{max-width:1280px;margin:0 auto;padding:0 1.5rem}.admin-layout[data-v-ca48cf2c]{display:flex;gap:1.5rem}.admin-content[data-v-ca48cf2c]{flex:1;background:var(--background-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;min-height:60vh}@media (max-width: 768px){.admin-layout[data-v-ca48cf2c]{flex-direction:column}}
