.referral-fab[data-v-80cb6855]{position:fixed;right:22px;bottom:26px;z-index:9998;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:13px 16px;border:1px solid rgba(91,108,240,.18);border-radius:16px;cursor:pointer;background:#fff;box-shadow:0 14px 34px #1e285024;transition:transform .2s ease,box-shadow .2s ease}.referral-fab[data-v-80cb6855]:hover{transform:translateY(-2px);box-shadow:0 18px 40px #1e28502e}.fab-label[data-v-80cb6855]{font-size:var(--fs-xs);font-weight:600;letter-spacing:.08em;color:var(--text-muted)}.fab-amount[data-v-80cb6855]{font-size:var(--fs-xl);font-weight:800;line-height:1;color:#5b6cf0;font-variant-numeric:tabular-nums}.referral-overlay[data-v-80cb6855]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(16,20,36,.45)}.referral-panel[data-v-80cb6855]{--ink: #1a1f33;--muted: #6f768c;--line: #eaedf5;--brand: #5b6cf0;--brand-deep: #4556d8;position:relative;width:min(380px,100%);padding:36px 32px 28px;border-radius:24px;background:#fff;box-shadow:0 24px 80px #141c3747,0 0 0 1px #ffffffa6 inset;overflow:hidden;text-align:center}.panel-aura[data-v-80cb6855]{position:absolute;top:-120px;left:50%;width:320px;height:240px;transform:translate(-50%);background:radial-gradient(circle,rgba(91,108,240,.18),transparent 68%);pointer-events:none}.referral-close[data-v-80cb6855]{position:absolute;top:14px;right:14px;z-index:2;width:32px;height:32px;border:none;border-radius:50%;background:#f3f4f8;color:var(--text-muted);font-size:var(--fs-xl);line-height:1;cursor:pointer}.referral-close[data-v-80cb6855]:hover{background:#e8eaf2;color:#5b6278}.referral-kicker[data-v-80cb6855]{position:relative;margin:0 0 18px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.18em;color:var(--brand)}.reward-block[data-v-80cb6855]{position:relative;margin-bottom:22px}.reward-figure[data-v-80cb6855]{display:inline-flex;align-items:flex-start;gap:2px;animation:reward-in-80cb6855 .5s cubic-bezier(.22,1,.36,1) both}.reward-currency[data-v-80cb6855]{margin-top:14px;font-size:var(--fs-2xl);font-weight:700;color:var(--brand)}.reward-value[data-v-80cb6855]{font-size:84px;font-weight:800;line-height:.86;letter-spacing:-.06em;color:var(--ink);font-variant-numeric:tabular-nums}.referral-title[data-v-80cb6855]{position:relative;margin:0 0 10px;font-size:var(--fs-2xl);font-weight:800;line-height:1.35;letter-spacing:-.02em;color:var(--ink)}.referral-desc[data-v-80cb6855]{position:relative;margin:0 auto 22px;max-width:30em;font-size:var(--fs-sm);line-height:1.7;color:var(--muted)}.invite-box[data-v-80cb6855]{position:relative;display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:14px 14px 14px 18px;border-radius:16px;background:#f6f7fc;border:1px solid var(--line);text-align:left}.invite-text[data-v-80cb6855]{flex:1;min-width:0}.invite-label[data-v-80cb6855]{display:block;margin-bottom:4px;font-size:var(--fs-xs);color:var(--text-muted)}.invite-code[data-v-80cb6855]{display:block;font-size:var(--fs-2xl);font-weight:800;letter-spacing:.22em;color:var(--ink);font-variant-numeric:tabular-nums}.invite-btn[data-v-80cb6855]{flex-shrink:0;min-width:68px;padding:10px 14px;border:none;border-radius:12px;background:var(--brand);color:#fff;font-size:var(--fs-sm);font-weight:700;cursor:pointer;transition:background .15s ease,transform .15s ease}.invite-btn[data-v-80cb6855]:hover{background:var(--brand-deep);transform:translateY(-1px)}.guest-tip[data-v-80cb6855]{margin:0 0 18px;padding:14px;border-radius:14px;background:#f6f7fc;font-size:var(--fs-sm);color:var(--muted)}.flow[data-v-80cb6855]{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:22px;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted)}.flow i[data-v-80cb6855]{width:14px;height:1px;background:#d5dae8;position:relative}.flow i[data-v-80cb6855]:after{content:"";position:absolute;right:-1px;top:50%;width:5px;height:5px;border-right:1.5px solid #d5dae8;border-top:1.5px solid #d5dae8;transform:translateY(-50%) rotate(45deg)}.flow-end[data-v-80cb6855]{color:var(--brand)}.btn-main[data-v-80cb6855],.btn-sub[data-v-80cb6855]{position:relative;width:100%;border-radius:14px;font-size:var(--fs-base);font-weight:700;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn-main[data-v-80cb6855]{margin-bottom:10px;padding:15px 18px;border:none;color:#fff;background:linear-gradient(180deg,#6b7bf5 0%,#5b6cf0 100%);box-shadow:0 12px 28px #5b6cf052}.btn-main[data-v-80cb6855]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 32px #5b6cf061}.btn-main[data-v-80cb6855]:disabled{opacity:.72;cursor:wait}.btn-sub[data-v-80cb6855]{padding:13px 18px;border:1px solid #dde2f0;background:#fff;color:var(--ink)}.btn-sub[data-v-80cb6855]:hover{background:#f7f8fc;border-color:#c9d0e4}.btn-dismiss[data-v-80cb6855]{display:block;width:100%;margin-top:14px;border:none;background:none;color:#a0a7ba;font-size:var(--fs-xs);cursor:pointer}.btn-dismiss[data-v-80cb6855]:hover{color:var(--muted)}.referral-fade-enter-active[data-v-80cb6855],.referral-fade-leave-active[data-v-80cb6855]{transition:opacity .28s ease}.referral-fade-enter-from[data-v-80cb6855],.referral-fade-leave-to[data-v-80cb6855]{opacity:0}.referral-rise-enter-active[data-v-80cb6855]{animation:referral-rise-80cb6855 .42s cubic-bezier(.22,1,.36,1)}.referral-rise-leave-active[data-v-80cb6855]{animation:referral-rise-80cb6855 .2s ease reverse}@keyframes referral-rise-80cb6855{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes reward-in-80cb6855{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.guide-overlay[data-v-758d67d1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:rgba(15,18,35,.45);display:flex;align-items:center;justify-content:center;padding:20px}.guide-modal[data-v-758d67d1]{position:relative;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;padding:28px 28px 22px;border-radius:18px;background:#fff;box-shadow:0 24px 80px #5b6cf040}.guide-close[data-v-758d67d1]{position:absolute;top:14px;right:16px;border:none;background:transparent;font-size:var(--fs-2xl);line-height:1;color:var(--text-muted);cursor:pointer}.guide-header[data-v-758d67d1]{text-align:center;margin-bottom:18px}.guide-badge[data-v-758d67d1]{display:inline-block;padding:4px 12px;margin-bottom:10px;border-radius:999px;font-size:var(--fs-xs);font-weight:700;color:var(--accent);background:rgba(91,108,240,.1)}.guide-header h2[data-v-758d67d1]{margin:0 0 8px;font-size:var(--fs-xl);color:var(--text)}.guide-header p[data-v-758d67d1]{margin:0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.6}.section-label[data-v-758d67d1]{margin:0 0 10px;font-size:var(--fs-xs);font-weight:700;color:var(--text-muted);letter-spacing:.02em}.guide-paths[data-v-758d67d1]{margin-bottom:18px}.path-row[data-v-758d67d1]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guide-path-card[data-v-758d67d1]{text-align:left;padding:16px 14px;border-radius:14px;border:1px solid #e8eaf2;background:#fff;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.guide-path-card[data-v-758d67d1]:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000000f}.guide-path-card.path-library[data-v-758d67d1]{border-color:#5b6cf047;background:#f7f8ff}.guide-path-card.path-custom[data-v-758d67d1]{border-color:#e67e2247;background:#fff8f2}.gp-icon[data-v-758d67d1]{font-size:var(--fs-xl);display:block;margin-bottom:8px}.guide-path-card strong[data-v-758d67d1]{display:block;font-size:var(--fs-base);margin-bottom:6px;color:var(--text)}.guide-path-card p[data-v-758d67d1]{margin:0 0 10px;font-size:var(--fs-xs);color:var(--text-muted);line-height:1.5}.gp-cta[data-v-758d67d1]{font-size:var(--fs-sm);font-weight:700;color:var(--accent)}.path-custom .gp-cta[data-v-758d67d1]{color:#c46a1a}.guide-steps[data-v-758d67d1]{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-direction:column;gap:10px}.guide-step[data-v-758d67d1]{display:flex;gap:12px;padding:12px 14px;border-radius:12px;background:#f8f9fd;border:1px solid rgba(91,108,240,.08)}.step-num[data-v-758d67d1]{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#5b6cf0,#8b5cf6);color:#fff;font-size:var(--fs-sm);font-weight:700;display:flex;align-items:center;justify-content:center}.step-body strong[data-v-758d67d1]{display:block;font-size:var(--fs-sm);margin-bottom:4px;color:var(--text)}.step-body p[data-v-758d67d1]{margin:0;font-size:var(--fs-xs);color:var(--text-muted);line-height:1.5}.guide-actions[data-v-758d67d1]{display:flex;gap:10px;margin-bottom:14px}.guide-actions .btn[data-v-758d67d1]{flex:1;justify-content:center}.guide-dismiss[data-v-758d67d1]{display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--fs-sm);color:var(--text-muted);cursor:pointer;margin-bottom:8px}.guide-tip[data-v-758d67d1]{margin:0;text-align:center;font-size:var(--fs-xs);color:#b0b3bf}.guide-fade-enter-active[data-v-758d67d1],.guide-fade-leave-active[data-v-758d67d1]{transition:opacity .25s ease}.guide-fade-enter-from[data-v-758d67d1],.guide-fade-leave-to[data-v-758d67d1]{opacity:0}@media (max-width: 560px){.path-row[data-v-758d67d1]{grid-template-columns:1fr}}.ann-overlay[data-v-76b4126b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2400;background:rgba(15,18,35,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.ann-modal[data-v-76b4126b]{position:relative;width:100%;max-width:480px;max-height:85vh;overflow-y:auto;padding:28px 24px 22px;border-radius:18px;background:#fff;box-shadow:0 24px 80px #5b6cf040}.ann-close[data-v-76b4126b]{position:absolute;top:14px;right:16px;border:none;background:transparent;font-size:var(--fs-2xl);line-height:1;color:var(--text-muted);cursor:pointer}.type-badge[data-v-76b4126b]{display:inline-block;padding:4px 10px;border-radius:999px;font-size:var(--fs-xs);font-weight:700;margin-bottom:10px}.type-badge.system[data-v-76b4126b]{background:#eef1ff;color:var(--accent)}.type-badge.personal[data-v-76b4126b]{background:#fff7ed;color:#ea580c}.ann-modal h3[data-v-76b4126b]{margin:0 0 6px;font-size:var(--fs-xl);line-height:1.4}.meta[data-v-76b4126b]{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:16px}.content[data-v-76b4126b]{font-size:var(--fs-base);line-height:1.75;color:#333;white-space:pre-wrap;margin-bottom:20px}.actions[data-v-76b4126b]{display:flex;flex-direction:column;gap:10px}.actions .btn[data-v-76b4126b]{width:100%;justify-content:center}.queue-tip[data-v-76b4126b]{margin-top:12px;text-align:center;font-size:var(--fs-xs);color:var(--text-muted)}.ann-fade-enter-active[data-v-76b4126b],.ann-fade-leave-active[data-v-76b4126b]{transition:opacity .25s ease}.ann-fade-enter-from[data-v-76b4126b],.ann-fade-leave-to[data-v-76b4126b]{opacity:0}.float-contact[data-v-6dd4d049]{position:fixed;left:0;top:42%;z-index:1200;pointer-events:none}.float-contact[data-v-6dd4d049]>*{pointer-events:auto}.contact-tab[data-v-6dd4d049]{display:flex;align-items:center;justify-content:center;padding:16px 11px;border:1px solid rgba(91,108,240,.2);border-left:none;border-radius:0 14px 14px 0;background:#fff;color:#5b6cf0;box-shadow:4px 10px 28px #1e28501f;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.contact-tab[data-v-6dd4d049]:hover{transform:translate(2px);box-shadow:6px 12px 32px #1e285029}.tab-label[data-v-6dd4d049]{writing-mode:vertical-rl;font-size:var(--fs-sm);font-weight:800;letter-spacing:.2em}.contact-dot[data-v-6dd4d049]{width:48px;height:48px;margin-left:10px;border:1px solid rgba(91,108,240,.2);border-radius:14px;background:#fff;color:#5b6cf0;font-size:var(--fs-sm);font-weight:800;box-shadow:0 10px 24px #1e28501f;cursor:pointer}.contact-overlay[data-v-6dd4d049]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(16,20,36,.45)}.contact-panel[data-v-6dd4d049]{--ink: #1a1f33;--muted: #6f768c;--line: #e8ecf5;--brand: #5b6cf0;--brand-deep: #4556d8;--fill: #f3f5fb;position:relative;width:min(520px,100%);overflow:hidden;padding:28px 28px 24px;border-radius:22px;background:#fff;box-shadow:0 24px 70px #141c3747}.panel-aura[data-v-6dd4d049]{position:absolute;top:-100px;right:-40px;width:220px;height:180px;background:radial-gradient(circle,rgba(91,108,240,.14),transparent 70%);pointer-events:none}.contact-close[data-v-6dd4d049]{position:absolute;top:14px;right:14px;z-index:2;width:32px;height:32px;border:none;border-radius:50%;background:var(--fill);color:var(--text-muted);font-size:var(--fs-xl);line-height:1;cursor:pointer}.contact-close[data-v-6dd4d049]:hover{background:#e7eaf4;color:#5b6278}.contact-hide[data-v-6dd4d049]{position:absolute;top:18px;right:52px;z-index:2;border:none;background:none;color:#a0a7ba;font-size:var(--fs-xs);cursor:pointer;padding:4px 6px}.contact-hide[data-v-6dd4d049]:hover{color:var(--muted)}.contact-head[data-v-6dd4d049]{position:relative;margin-bottom:16px;padding-right:88px}.contact-kicker[data-v-6dd4d049]{margin:0 0 8px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.16em;color:var(--brand)}.contact-title[data-v-6dd4d049]{margin:0 0 8px;font-size:var(--fs-xl);font-weight:800;line-height:1.3;letter-spacing:-.02em;color:var(--ink)}.contact-desc[data-v-6dd4d049]{margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--muted)}.channel-bar[data-v-6dd4d049]{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.channel-pill[data-v-6dd4d049]{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:12px;background:var(--fill);min-width:0}.channel-pill em[data-v-6dd4d049]{font-style:normal;font-size:var(--fs-xs);font-weight:700;color:var(--brand)}.channel-pill strong[data-v-6dd4d049]{font-size:var(--fs-xs);font-weight:600;color:var(--ink);word-break:break-all;line-height:1.35}.contact-form[data-v-6dd4d049]{position:relative;display:flex;flex-direction:column;gap:10px}.row-2[data-v-6dd4d049]{display:grid;grid-template-columns:1fr 1.35fr;gap:10px}.field[data-v-6dd4d049]{display:flex;flex-direction:column;gap:6px;text-align:left}.field>span[data-v-6dd4d049]{font-size:var(--fs-xs);font-weight:600;color:var(--text-muted)}.field input[data-v-6dd4d049],.field textarea[data-v-6dd4d049]{width:100%;box-sizing:border-box;padding:11px 14px;border:1.5px solid transparent;border-radius:12px;background:var(--fill);color:var(--ink);font:inherit;font-size:var(--fs-sm);line-height:1.4;outline:none;resize:none;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.field input[data-v-6dd4d049]::placeholder,.field textarea[data-v-6dd4d049]::placeholder{color:#a8b0c3}.field input[data-v-6dd4d049]:hover,.field textarea[data-v-6dd4d049]:hover{background:#eef1f9}.field input[data-v-6dd4d049]:focus,.field textarea[data-v-6dd4d049]:focus{border-color:#5b6cf08c;background:#fff;box-shadow:0 0 0 4px #5b6cf01f}.field textarea[data-v-6dd4d049]{height:64px;min-height:64px;max-height:64px}.btn-main[data-v-6dd4d049]{margin-top:4px;width:100%;padding:13px 18px;border:none;border-radius:12px;font-size:var(--fs-base);font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(180deg,#6b7bf5 0%,#5b6cf0 100%);box-shadow:0 10px 24px #5b6cf047;transition:transform .15s ease,box-shadow .15s ease}.btn-main[data-v-6dd4d049]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #5b6cf057}.btn-main[data-v-6dd4d049]:disabled{opacity:.72;cursor:wait}.contact-fade-enter-active[data-v-6dd4d049],.contact-fade-leave-active[data-v-6dd4d049]{transition:opacity .25s ease}.contact-fade-enter-from[data-v-6dd4d049],.contact-fade-leave-to[data-v-6dd4d049]{opacity:0}.contact-rise-enter-active[data-v-6dd4d049]{animation:contact-rise-6dd4d049 .36s cubic-bezier(.22,1,.36,1)}.contact-rise-leave-active[data-v-6dd4d049]{animation:contact-rise-6dd4d049 .18s ease reverse}@keyframes contact-rise-6dd4d049{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 560px){.contact-panel[data-v-6dd4d049]{padding:24px 18px 20px}.channel-bar[data-v-6dd4d049],.row-2[data-v-6dd4d049]{grid-template-columns:1fr}.contact-head[data-v-6dd4d049]{padding-right:40px}.contact-hide[data-v-6dd4d049]{display:none}}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p,ul,ol,figure,blockquote{margin:0}:root{--bg: #f4f6fb;--bg-card: #ffffff;--bg-card-hover: #f0f2f8;--border: rgba(0, 0, 0, .08);--text: #1e2235;--text-muted: #555e72;--accent: #5b6cf0;--accent-light: #7c8ff7;--accent-glow: rgba(91, 108, 240, .2);--gradient: linear-gradient(135deg, #5b6cf0 0%, #8b9cf7 50%, #e87fa0 100%);--shadow: 0 2px 12px rgba(0, 0, 0, .05);--shadow-hover: 0 8px 32px rgba(91, 108, 240, .14);--radius: 14px;--radius-sm: 8px;--transition: .3s cubic-bezier(.4, 0, .2, 1)}html{scroll-behavior:smooth}body{font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);font-size:16.5px;line-height:1.65;overflow-x:hidden}.container{width:100%;max-width:1480px;margin:0 auto;padding:0 20px}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;padding:12px 0;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-inner{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.logo-img{height:38px;width:auto;display:block}.nav-links{display:flex;align-items:center;gap:28px;list-style:none}.nav-links>li{display:flex;align-items:center}.nav-links a{color:var(--text-muted);text-decoration:none;font-size:.98rem;font-weight:600;transition:color var(--transition)}.nav-links a:hover{color:var(--text)}.nav-cta{padding:9px 20px!important;background:var(--accent);color:#fff!important;border-radius:8px;font-size:.98rem!important}.nav-cta:hover{background:var(--accent-light)!important;color:#fff!important}.nav-guide-link{border:none;background:transparent;font:inherit;font-size:.98rem;font-weight:500;color:var(--text-muted);cursor:pointer;padding:0;transition:var(--transition)}.nav-guide-link:hover{color:var(--accent)}.nav-portal-link{border:none;background:transparent;font:inherit;font-size:.98rem;font-weight:600;color:var(--accent);cursor:pointer;padding:0;transition:var(--transition)}.nav-portal-link:hover{color:var(--accent-dark, #3d4fd8)}.portal-hint{padding:0 0 36px;background:linear-gradient(180deg,#f4f6fb 0%,#fff 100%)}.portal-hint-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 28px;border:1px solid rgba(91,108,240,.22);border-radius:var(--radius);background:linear-gradient(120deg,#f6f7ff 0%,#fff 55%);flex-wrap:wrap}.portal-hint-text{flex:1;min-width:240px}.portal-hint-text strong{display:block;margin-bottom:6px;font-size:1.15rem;color:var(--text)}.portal-hint-text p{margin:0;font-size:1.02rem;font-weight:500;color:var(--text-muted);line-height:1.65}.portal-hint-text em{font-style:normal;font-weight:700;color:var(--accent)}.nav-referral{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border:1px solid rgba(91,108,240,.22);border-radius:999px;font-size:13px;font-weight:700;color:#5b6cf0;cursor:pointer;background:#fff;box-shadow:0 4px 14px #5b6cf01a;white-space:nowrap;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.nav-referral:hover{transform:translateY(-1px);background:#f5f7ff;box-shadow:0 8px 18px #5b6cf029}.nav-referral-dot{width:6px;height:6px;border-radius:50%;background:#5b6cf0}.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--text)}.home-story{--story-scroll: .5;--story-shift: 0px;position:relative;overflow:clip;background:linear-gradient(180deg,#f7f8fc 0%,#eef1f9 38%,#f5f6fb 68%,#ffffff 100%)}.home-story-glow{position:absolute;border-radius:50%;filter:blur(48px);pointer-events:none;z-index:0;opacity:.22;will-change:transform}.home-story-glow-a{width:min(52vw,520px);height:min(52vw,520px);top:8%;left:-8%;background:rgba(91,108,240,.18);transform:translate3d(0,calc(var(--story-shift) * -.55),0)}.home-story-glow-b{width:min(44vw,440px);height:min(44vw,440px);top:42%;right:-6%;background:rgba(232,127,160,.12);transform:translate3d(0,calc(var(--story-shift) * .85),0)}.home-story .hero,.home-story .stats,.home-story .flexible-process,.home-story .story-bridge{position:relative;z-index:1}.home-story .hero{padding:72px 0 56px}.home-story .hero-bg{background:radial-gradient(ellipse 70% 50% at 20% 30%,rgba(91,108,240,.1),transparent),radial-gradient(ellipse 50% 40% at 85% 60%,rgba(232,127,160,.07),transparent)}.story-bridge{padding:0 20px;margin-top:-6px;margin-bottom:-6px}.marquee-bridge{max-width:1480px;margin:0 auto;border:1px solid rgba(91,108,240,.12);border-radius:999px;background:#fff;box-shadow:0 10px 36px #1e22350f;padding:12px 0}.home-story .stats{padding:52px 0 28px;background:transparent;border-bottom:none}.home-story .stats .stat-item{background:#fff;border:1px solid rgba(30,34,53,.06);box-shadow:0 8px 28px #1e22350a;transition:box-shadow .35s ease}.home-story .stats .stat-item:hover{box-shadow:0 14px 36px #5b6cf01a}.story-soft-divider{height:48px;margin:0;line-height:0;color:#ffffffeb}.story-soft-divider svg{display:block;width:100%;height:100%}.story-soft-divider path{fill:currentColor}.home-story .flexible-process{padding-top:28px;padding-bottom:16px;background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(91,108,240,.08),transparent 70%),#f7f8fc;border-top:none;border-radius:24px;margin:8px 0 0}.home-story .plan-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}.home-story .plan-card:hover{transform:translateY(-3px);border-color:#5b6cf047;box-shadow:0 16px 32px #5b6cf01a}.home-story .story-fx{--enter: 1;--exit: 0;--focus: 1;--p: .5;--y: 0px;--scale: 1;--opacity: 1;transform-origin:center top;will-change:transform,opacity}.home-story.story-js-timeline .story-fx{opacity:var(--opacity);transform:translate3d(0,var(--y),0) scale(var(--scale));transition:none}.home-story.story-js-timeline .stats .stat-item{opacity:calc(.15 + var(--enter) * .85);transform:translate3d(0,calc((1 - var(--enter)) * (40px + var(--i, 0) * 14px) + var(--exit) * -16px),0);transition:none}.home-story.story-js-timeline #flexible-process .flexible-head{opacity:calc(.2 + var(--enter) * .8);transform:translate3d(0,calc((1 - var(--enter)) * 28px),0);transition:none}.home-story.story-js-timeline #flexible-process .flexible-plans{opacity:calc(.2 + var(--enter) * .8);transform:translate3d(0,calc((1 - var(--enter)) * 24px),0);transition:none}@media (prefers-reduced-motion: reduce){.home-story-glow{transform:none!important}.home-story .story-fx,.home-story .stats .stat-item,.home-story #flexible-process .flexible-head,.home-story #flexible-process .flexible-plans{opacity:1!important;transform:none!important;filter:none!important}}.hero{position:relative;padding:100px 0 48px;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 50% at 20% 30%,rgba(91,108,240,.09),transparent),radial-gradient(ellipse 50% 40% at 85% 60%,rgba(232,127,160,.06),transparent)}.hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}.hero-content{max-width:640px;padding-bottom:8px}.hero-tag{display:inline-block;padding:6px 16px;background:rgba(91,108,240,.1);border:1px solid rgba(91,108,240,.2);border-radius:100px;font-size:.9rem;font-weight:600;color:var(--accent);margin-bottom:16px}.hero h1{font-family:Playfair Display,Noto Sans SC,serif;font-size:clamp(2.25rem,4.8vw,3.55rem);font-weight:700;line-height:1.2;margin-bottom:16px}.hero h1 .highlight{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-desc{font-size:1.12rem;font-weight:500;color:var(--text-muted);margin-bottom:24px;line-height:1.75}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:0}.hero-visual{position:relative}.hero-cards{display:flex;flex-direction:column;gap:14px}.hero-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--card-color);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;transition:var(--transition);animation:slideIn .6s ease both;animation-delay:var(--card-delay)}.hero-card:hover{transform:translate(6px);box-shadow:var(--shadow-hover)}.hero-card-emoji{font-size:2rem}.hero-card-info{display:flex;flex-direction:column;gap:2px}.hero-card-cat{font-size:.84rem;color:var(--card-color);font-weight:600}.hero-card-info strong{font-size:1.05rem;line-height:1.3}.hero-card-grade{font-size:.86rem;font-weight:500;color:var(--text-muted)}@keyframes slideIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.marquee-bar{background:var(--bg-card);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:14px 0;overflow:hidden}.home-story .marquee-bridge{border-top:none;border-bottom:none}.marquee-track{display:flex;gap:40px;animation:marquee 30s linear infinite;width:max-content}.marquee-item{font-size:.95rem;color:var(--text-muted);white-space:nowrap;font-weight:500}.marquee-item:before{content:"◆";color:var(--accent);margin-right:10px;font-size:.5rem;vertical-align:middle}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 30px;border-radius:var(--radius-sm);font-size:1rem;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:var(--transition);font-family:inherit}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 4px 14px var(--accent-glow)}.btn-primary:hover{background:var(--accent-light);transform:translateY(-1px)}.btn-outline{background:#fff;color:var(--text);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-full{width:100%}.stats{padding:40px 0;background:var(--bg-card);border-bottom:1px solid var(--border)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat-item{text-align:center;padding:20px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg)}.stat-icon{font-size:1.65rem;display:block;margin-bottom:6px}.stat-num{display:block;font-size:2.45rem;font-weight:700;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.stat-label{display:block;margin-top:2px;font-size:1rem;font-weight:700}.stat-sub{display:block;font-size:.86rem;font-weight:500;color:var(--text-muted);margin-top:2px}.section-header{margin-bottom:32px}.section-header h2{font-family:Playfair Display,Noto Sans SC,serif;font-size:2.05rem;font-weight:700;margin-bottom:8px}.section-header p{color:var(--text-muted);font-size:1.08rem;font-weight:500}.section-header-row{display:flex;justify-content:space-between;align-items:flex-end}.works-count{font-size:1rem;color:var(--accent);font-weight:700;padding:7px 18px;background:rgba(91,108,240,.08);border-radius:100px}.works{padding:40px 0 56px}.featured-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.works-toolbar{margin-bottom:20px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.category-tags{display:flex;flex-wrap:wrap;gap:8px}.category-tag{padding:9px 20px;border-radius:100px;border:1px solid var(--border);background:var(--bg);color:var(--text-muted);font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;transition:var(--transition)}.category-tag:hover{border-color:var(--accent);color:var(--accent)}.category-tag.active{background:var(--accent);border-color:var(--accent);color:#fff}.works-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.work-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:var(--transition);animation:fadeInUp .4s ease both;box-shadow:var(--shadow);display:flex;flex-direction:column}.work-card:hover{transform:translateY(-4px);border-color:#5b6cf04d;box-shadow:var(--shadow-hover)}.work-card-featured{border-color:#5b6cf033}.work-card-header{position:relative;height:120px;display:flex;align-items:center;justify-content:center;overflow:hidden}.work-card.has-cover .work-card-header{height:160px;padding:0;background:#eef0f6}.work-emoji{font-size:3rem}.work-card.has-cover .work-badge,.work-card.has-cover .work-grade{box-shadow:0 2px 8px #0000002e}.work-badge{position:absolute;top:10px;left:10px;padding:2px 10px;background:var(--accent);color:#fff;font-size:.8rem;border-radius:100px;font-weight:700}.work-grade{position:absolute;top:10px;right:10px;padding:3px 11px;color:#fff;font-size:.8rem;border-radius:100px;font-weight:700}.work-card-body{padding:16px;flex:1;display:flex;flex-direction:column}.work-meta{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.work-category{font-size:.8rem;padding:3px 9px;border-radius:100px;font-weight:700}.work-year,.work-school{font-size:.8rem;font-weight:500;color:var(--text-muted)}.work-card h3{font-size:1.08rem;font-weight:700;margin-bottom:6px;line-height:1.35}.work-card p{font-size:.92rem;font-weight:500;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px;flex:1}.work-highlights{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:10px}.highlight-mini{font-size:.78rem;font-weight:600;padding:3px 9px;background:rgba(91,108,240,.08);color:var(--accent);border-radius:4px}.work-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;padding-top:10px;border-top:1px solid var(--border)}.work-tech{display:flex;flex-wrap:wrap;gap:4px;flex:1}.tech-tag{font-size:.78rem;font-weight:500;padding:3px 7px;background:rgba(91,108,240,.06);border-radius:4px;color:var(--text-muted)}.work-link{font-size:.88rem;color:var(--accent);font-weight:600;white-space:nowrap}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.flexible-process{--plan-ink: #1a2250;--plan-body: #3a456f;--plan-soft: #526087;padding:52px 0 60px;background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(91,108,240,.08),transparent 70%),#f7f8fc;border-top:1px solid rgba(91,108,240,.08)}.flexible-process>.container{max-width:1480px}.flexible-head{max-width:820px;margin:0 auto 28px;text-align:center}.flexible-tag{display:inline-flex;margin:0 0 10px;padding:6px 14px;border-radius:999px;background:rgba(91,108,240,.14);color:#4456d8;font-size:.88rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.flexible-head h2{margin:0 0 12px;font-family:Playfair Display,Noto Sans SC,serif;font-size:clamp(1.85rem,2.6vw,2.35rem);font-weight:700;line-height:1.28;color:var(--plan-ink);text-wrap:balance}.flexible-lead{margin:0 auto 18px;max-width:640px;color:var(--plan-body);font-size:1.08rem;font-weight:500;line-height:1.7}.flexible-head-actions{display:flex;flex-direction:column;align-items:center;gap:8px}.flexible-cta{position:relative;display:inline-flex;align-items:center;gap:12px;overflow:hidden;padding:16px 20px 16px 28px;border:0;border-radius:999px 18px 999px 999px;background:linear-gradient(120deg,#5b6cf0 0%,#7a8af5 48%,#6d7cf2 100%);color:#fff;font:inherit;font-size:1.05rem;font-weight:700;letter-spacing:.01em;cursor:pointer;box-shadow:0 10px 24px #5b6cf047,inset 0 1px #ffffff47;transition:transform .28s ease,box-shadow .28s ease,filter .28s ease}.flexible-cta-shine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.34) 48%,transparent 68%);transform:translate(-120%);pointer-events:none}.flexible-cta-arrow{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:rgba(255,255,255,.2);box-shadow:inset 0 0 0 1px #ffffff47;transition:transform .28s ease,background .28s ease}.flexible-cta-arrow svg{width:16px;height:16px}.flexible-cta:hover{transform:translateY(-2px) scale(1.01);filter:saturate(1.08);box-shadow:0 16px 32px #5b6cf057,inset 0 1px #ffffff59}.flexible-cta:hover .flexible-cta-shine{animation:flexibleCtaShine .85s ease}.flexible-cta:hover .flexible-cta-arrow{background:rgba(255,255,255,.32);transform:translate(2px)}.flexible-cta:focus-visible{outline:2px solid rgba(91,108,240,.45);outline-offset:3px}@keyframes flexibleCtaShine{0%{transform:translate(-120%)}to{transform:translate(120%)}}.flexible-hint{margin:0;max-width:420px;text-align:center;font-size:.92rem;font-weight:500;line-height:1.55;color:var(--plan-soft)}.flexible-plans{margin-bottom:18px}.flexible-label{margin:0 0 14px;font-size:1rem;font-weight:700;letter-spacing:.04em;color:#4456d8;text-align:center}.plan-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}.plan-item{--chip-bg: rgba(91, 108, 240, .12);--chip-fg: #4456d8;--card-bg: #ffffff;--card-line: rgba(91, 108, 240, .14);--title-c: #2f3d8f}.plan-item:nth-child(2){--chip-bg: rgba(14, 165, 233, .12);--chip-fg: #0284c7;--title-c: #0c4a6e;--card-line: rgba(14, 165, 233, .18)}.plan-item:nth-child(3){--chip-bg: rgba(16, 185, 129, .12);--chip-fg: #059669;--title-c: #065f46;--card-line: rgba(16, 185, 129, .18)}.plan-item:nth-child(4){--chip-bg: rgba(245, 158, 11, .14);--chip-fg: #d97706;--title-c: #92400e;--card-line: rgba(245, 158, 11, .22)}.plan-item:nth-child(5){--chip-bg: rgba(99, 102, 241, .12);--chip-fg: #4f46e5;--title-c: #312e81;--card-line: rgba(99, 102, 241, .18)}.plan-item:nth-child(6){--chip-bg: rgba(236, 72, 153, .12);--chip-fg: #db2777;--title-c: #9d174d;--card-line: rgba(236, 72, 153, .18)}.plan-item:nth-child(7){--chip-bg: rgba(91, 108, 240, .1);--chip-fg: #5b6cf0;--title-c: #3730a3;--card-line: rgba(91, 108, 240, .28)}.plan-item.featured{grid-column:1 / -1;--chip-bg: rgba(91, 108, 240, .14);--chip-fg: #3f51d8;--title-c: #24306a;--card-line: rgba(91, 108, 240, .28)}.plan-card{position:relative;display:flex;flex-direction:column;align-items:stretch;width:100%;height:100%;padding:0;overflow:hidden;border:1px solid var(--card-line);border-radius:18px;background:linear-gradient(165deg,rgba(91,108,240,.05),transparent 42%),var(--card-bg);box-shadow:0 8px 22px #24306a0f;text-align:left;color:inherit;font:inherit;cursor:pointer}.plan-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--chip-fg),transparent)}.plan-item.featured .plan-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(220px,.9fr) auto;grid-template-areas:"head stages action" "title stages action" "desc stages action" "detail stages action";column-gap:18px;row-gap:8px;align-items:center;padding:20px 22px 20px 26px;background:linear-gradient(120deg,rgba(91,108,240,.12),rgba(255,255,255,.95) 48%),#fff}.plan-item.outline .plan-card{border-style:dashed;border-width:1.5px;background:rgba(91,108,240,.04)}.plan-card:focus-visible{outline:2px solid rgba(91,108,240,.45);outline-offset:2px}.plan-card-head{grid-area:head;display:flex;align-items:center;gap:8px;padding:16px 16px 0 18px}.plan-item.featured .plan-card-head{padding:0}.plan-index{font-family:Playfair Display,Georgia,serif;font-style:normal;font-size:1.2rem;font-weight:700;color:var(--chip-fg)}.plan-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 9px;border-radius:999px;background:linear-gradient(90deg,#5b6cf0,#8b9cf7);color:#fff;font-size:.84rem;font-weight:700;letter-spacing:.03em;box-shadow:0 4px 10px #5b6cf038}.plan-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#fff}.plan-title{grid-area:title;display:block;margin:0;padding:10px 16px 0 18px;font-size:1.28rem;font-weight:700;line-height:1.3;color:var(--title-c)}.plan-item.featured .plan-title{padding:0;font-size:1.55rem}.plan-desc{grid-area:desc;display:block;margin:0;padding:10px 16px 0 18px;font-size:1.02rem;line-height:1.6;color:var(--plan-body);font-weight:600}.plan-item.featured .plan-desc{padding:0;font-size:1.08rem;color:#3a456f}.plan-stages{grid-area:stages;list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:14px 16px 0 18px}.plan-item.featured .plan-stages{padding:14px;border-radius:14px;background:rgba(255,255,255,.78);border:1px solid rgba(91,108,240,.14);align-self:stretch;align-content:center;min-height:96px}.plan-stages li{padding:7px 12px;border-radius:999px;background:var(--chip-bg);color:var(--chip-fg);font-size:.9rem;font-weight:700;line-height:1.25}.plan-detail{grid-area:detail;display:block;margin:0;padding:12px 16px 0 18px;font-size:.95rem;line-height:1.6;font-weight:500;color:var(--plan-soft)}.plan-item.featured .plan-detail{padding:0;font-size:.98rem;color:#526087}.plan-action{grid-area:action;position:relative;display:inline-flex;align-items:center;align-self:flex-start;gap:8px;margin:16px 16px 18px 18px;padding:11px 11px 11px 16px;border-radius:999px;font-size:.95rem;font-weight:700;transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease,border-color .25s ease}.plan-item.featured .plan-action{margin:0;justify-self:end;align-self:center}.plan-action i{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;font-style:normal;transition:transform .25s ease,background .25s ease,color .25s ease}.plan-action svg{width:13px;height:13px}.plan-action.ghost{border:1.5px solid color-mix(in srgb,var(--chip-fg) 45%,white);background:#fff;color:var(--chip-fg);box-shadow:0 4px 12px #24306a0f}.plan-action.ghost i{background:var(--chip-bg);color:var(--chip-fg)}.plan-action.solid{padding:14px 14px 14px 20px;border:0;background:linear-gradient(120deg,#5b6cf0 0%,#7c8ff7 55%,#6a7bf5 100%);color:#fff;font-size:1.02rem;box-shadow:0 10px 22px #5b6cf047,inset 0 1px #ffffff4d}.plan-action.solid i{background:rgba(255,255,255,.22);color:#fff}.plan-action.dash{border:1.5px dashed rgba(91,108,240,.55);background:rgba(91,108,240,.06);color:#5b6cf0}.plan-action.dash i{background:#fff;color:#5b6cf0;box-shadow:0 0 0 1px #5b6cf02e}.plan-card:hover .plan-action.ghost{background:var(--chip-fg);border-color:transparent;color:#fff;transform:translateY(-1px)}.plan-card:hover .plan-action.ghost i{background:rgba(255,255,255,.22);color:#fff;transform:translate(2px)}.plan-card:hover .plan-action.solid{transform:translateY(-1px) scale(1.02);box-shadow:0 14px 28px #5b6cf057,inset 0 1px #ffffff59}.plan-card:hover .plan-action.solid i{transform:translate(2px)}.plan-card:hover .plan-action.dash{background:#fff;border-style:solid;border-color:#5b6cf0;transform:translateY(-1px)}.plan-card:hover .plan-action.dash i{background:#5b6cf0;color:#fff;transform:translate(2px)}.flexible-after{padding:16px 18px;border-radius:16px;border:1px solid rgba(91,108,240,.12);background:linear-gradient(135deg,#eef1ff,#f8f9ff 55%)}.flexible-after>.flexible-label{text-align:left;margin-bottom:12px;color:#3f51d8;font-size:1.05rem}.flexible-after ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;counter-reset:after-step}.flexible-after li{counter-increment:after-step;position:relative;padding:2px 0 2px 38px;font-size:1rem;font-weight:500;line-height:1.55;color:#3a456f}.flexible-after li:before{content:counter(after-step,decimal-leading-zero);position:absolute;left:0;top:2px;font-family:Playfair Display,Noto Sans SC,serif;font-size:1.1rem;font-weight:700;color:#5b6cf0}@media (prefers-reduced-motion: reduce){.flexible-cta,.flexible-cta-arrow,.plan-card,.plan-action,.plan-action i{transition:none}.flexible-cta:hover .flexible-cta-shine{animation:none}}@media (max-width: 960px){.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-item.featured .plan-card{grid-template-columns:1fr;grid-template-areas:"head" "title" "desc" "stages" "detail" "action";padding:18px}.plan-item.featured .plan-stages{min-height:0}.plan-item.featured .plan-action.solid{justify-self:start}}@media (max-width: 768px){.flexible-process{padding:40px 0 48px}.flexible-head h2{font-size:1.45rem}.plan-grid,.flexible-after ol{grid-template-columns:1fr}}.process{padding:72px 0 64px;background:radial-gradient(ellipse 70% 50% at 0% 0%,rgba(91,108,240,.06),transparent 55%),#fff;border-top:1px solid var(--border)}.process-rail{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:8px 0 0;position:relative}.process-rail:before{content:"";position:absolute;top:22px;left:6%;right:6%;height:1px;background:linear-gradient(90deg,transparent,rgba(91,108,240,.35),transparent);pointer-events:none}.process-node{position:relative;padding:0 14px 0 0;animation:fadeInUp .55s ease both;animation-delay:calc(var(--i, 0) * .07s)}.process-index{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:18px;border-radius:50%;background:#fff;border:1.5px solid rgba(91,108,240,.45);color:var(--accent);font-size:.84rem;font-weight:700;letter-spacing:.02em;position:relative;z-index:1;box-shadow:0 0 0 6px #fff}.process-body h3{margin:0 0 8px;font-size:1.18rem;font-weight:700;letter-spacing:-.01em}.process-body p{margin:0;font-size:.98rem;font-weight:500;color:var(--text-muted);line-height:1.65;max-width:240px}.features{padding:72px 0;background:linear-gradient(180deg,#f0f2f8 0%,#f4f6fb 40%,#f4f6fb 100%)}.features-layout{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.4fr);gap:48px 64px;align-items:start}.features-kicker{margin:0 0 12px;font-size:.88rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.features-intro h2{margin:0 0 14px;font-family:Playfair Display,Noto Sans SC,serif;font-size:2.2rem;line-height:1.25}.features-intro>p{margin:0;color:var(--text-muted);font-size:1.08rem;font-weight:500;line-height:1.7;max-width:360px}.features-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(30,34,53,.12)}.feature-row{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:22px 0;border-bottom:1px solid rgba(30,34,53,.12);transition:background .25s ease}.feature-row:hover{background:rgba(255,255,255,.55)}.feature-index{font-family:Playfair Display,Noto Sans SC,serif;font-size:1.5rem;font-weight:700;color:#5b6cf0a6;line-height:1.2;padding-top:2px}.feature-copy h3{margin:0 0 6px;font-size:1.2rem;font-weight:700}.feature-copy p{margin:0;font-size:1.02rem;font-weight:500;color:var(--text-muted);line-height:1.7}.reviews{padding:72px 0;background:radial-gradient(ellipse 60% 40% at 100% 0%,rgba(232,127,160,.08),transparent 50%),#fff;border-top:1px solid var(--border)}.reviews-board{display:grid;grid-template-columns:1.15fr .85fr;gap:28px 36px;align-items:stretch}.review-featured{margin:0;padding:36px 36px 32px;border-radius:4px 20px 20px;background:linear-gradient(145deg,#1e2235 0%,#2a3148 100%);color:#f5f6fa;position:relative;overflow:hidden}.review-featured:before{content:"“";position:absolute;top:8px;left:18px;font-family:Playfair Display,Georgia,serif;font-size:5.5rem;line-height:1;color:#ffffff14;pointer-events:none}.review-featured-quote{position:relative;margin:0 0 28px;font-size:1.35rem;line-height:1.75;font-weight:600;letter-spacing:.01em}.review-featured footer{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;position:relative}.review-featured footer strong{display:block;font-size:1.05rem;margin-bottom:2px}.review-featured footer span{font-size:.9rem;color:#f5f6fab8}.review-featured-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.review-featured .review-grade{margin-left:0;background:rgba(255,255,255,.14);color:#fff}.review-featured .review-project{margin:0;color:#f5f6facc;font-size:.9rem;font-weight:500}.reviews-side{display:flex;flex-direction:column;gap:0;border-top:1px solid rgba(30,34,53,.12)}.review-side-item{padding:18px 0;border-bottom:1px solid rgba(30,34,53,.12)}.review-side-text{margin:0 0 12px;font-size:1.05rem;font-weight:500;line-height:1.7;color:var(--text)}.review-side-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:baseline}.review-side-meta strong{font-size:.95rem}.review-side-meta span{font-size:.88rem;color:var(--text-muted)}.review-grade{margin-left:auto;font-size:.8rem;padding:3px 10px;background:rgba(91,108,240,.1);color:var(--accent);border-radius:4px;font-weight:600;white-space:nowrap}.review-project{font-size:.86rem;font-weight:500;color:var(--accent)}.contact{padding:64px 0 72px;background:linear-gradient(180deg,#f4f6fb 0%,#eef1f8 100%)}.contact-shell{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center;padding:40px 44px;border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(255,255,255,.8)),radial-gradient(circle at 100% 0%,rgba(91,108,240,.1),transparent 45%);border:1px solid rgba(30,34,53,.08);box-shadow:0 18px 48px #1e22350d}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.contact-cta-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}.contact-cta-box{padding:28px 26px;border-radius:16px;background:#1e2235;color:#f5f6fa}.contact-cta-label{margin:0 0 8px!important;font-size:.84rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#7c8ff7f2!important}.contact-cta-box p{margin:0 0 18px;color:#f5f6fad9;line-height:1.65;font-size:1.05rem;font-weight:500}.contact-cta-box .btn-primary{width:100%;justify-content:center}.contact-text h2{font-family:Playfair Display,Noto Sans SC,serif;font-size:2.1rem;margin-bottom:12px;line-height:1.3}.contact-text>p{color:var(--text-muted);margin-bottom:20px;font-size:1.08rem;font-weight:500;line-height:1.7}.contact-list{list-style:none;margin-bottom:24px}.contact-list li{position:relative;padding:7px 0 7px 18px;color:var(--text-muted);font-size:1.02rem;font-weight:500}.contact-list li:before{content:"";position:absolute;left:0;top:.85em;width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.7}.contact-channels{display:flex;flex-wrap:wrap;gap:10px}.channel-item{padding:9px 16px;background:rgba(255,255,255,.7);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.95rem;font-weight:500}.channel-item span{color:var(--text-muted);margin-right:6px}.contact-form{display:flex;flex-direction:column;gap:14px;background:var(--bg-card);padding:28px;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form input,.contact-form textarea{width:100%;padding:12px 16px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:.88rem;font-family:inherit;outline:none;transition:border-color var(--transition)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent)}.contact-form textarea{resize:vertical;min-height:90px}.footer{padding:40px 0 20px;border-top:1px solid var(--border);background:var(--bg-card)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}.footer-brand p{font-weight:500;font-size:.95rem;color:var(--text-muted);margin-top:12px;line-height:1.6}.footer-logo{height:40px;width:auto;display:block}.footer-col h4{font-size:.98rem;font-weight:700;margin-bottom:12px}.footer-col a{display:block;font-size:.92rem;font-weight:500;color:var(--text-muted);text-decoration:none;padding:4px 0;transition:color var(--transition)}.footer-col a:hover{color:var(--accent)}.footer-bottom{padding-top:20px;border-top:1px solid var(--border)}.footer-copy{font-size:.9rem;font-weight:500;color:var(--text-muted)}.footer-copy a{color:inherit;text-decoration:none}.footer-copy a:hover{color:var(--accent);text-decoration:underline}.footer-sep{margin:0 .35em;opacity:.55}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:var(--transition)}.modal.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(30,34,53,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);max-width:680px;width:92%;max-height:85vh;overflow-y:auto;padding:32px;transform:translateY(16px) scale(.97);transition:var(--transition);box-shadow:0 24px 64px #0000001f}.modal.open .modal-content{transform:translateY(0) scale(1)}.modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;background:var(--bg);color:var(--text-muted);font-size:1.3rem;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--text)}.modal-top{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.modal-emoji{font-size:2.5rem}.modal-top h2{font-size:1.3rem;margin-bottom:4px}.modal-grade{margin-left:auto;padding:4px 12px;color:#fff;font-size:.75rem;border-radius:100px;font-weight:600;white-space:nowrap}.modal-meta{display:flex;gap:8px;flex-wrap:wrap}.modal-meta span{font-size:.78rem;color:var(--text-muted)}.modal-desc{color:var(--text-muted);margin-bottom:20px;line-height:1.75;font-size:.9rem}.modal-info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.modal-info-item{padding:12px;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border);text-align:center}.modal-info-item strong{display:block;font-size:.72rem;color:var(--text-muted);margin-bottom:4px}.modal-info-item span{font-size:.88rem;font-weight:600;color:var(--accent)}.modal-section{margin-bottom:18px}.modal-section h4{font-size:.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.modal-highlights,.modal-tech,.modal-deliverables{display:flex;flex-wrap:wrap;gap:6px}.highlight-tag{padding:5px 12px;background:rgba(91,108,240,.1);border:1px solid rgba(91,108,240,.18);border-radius:100px;font-size:.78rem;color:var(--accent)}.deliverable-tag{padding:5px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.78rem;color:var(--text-muted)}.modal-content-rich{max-width:780px;padding-top:0}.modal-cover{margin:-32px -32px 20px;height:220px;overflow:hidden;border-radius:var(--radius) var(--radius) 0 0}.modal-cover img{width:100%;height:100%;object-fit:cover}.modal-eval{margin-bottom:20px;padding:14px 16px;background:rgba(91,108,240,.06);border-left:3px solid var(--accent);border-radius:var(--radius-sm)}.modal-eval strong{display:block;font-size:.75rem;color:var(--accent);margin-bottom:6px}.modal-eval p{font-size:.88rem;line-height:1.7;color:var(--text);white-space:pre-wrap}.modal-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.modal-gallery-item{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;padding:0;background:var(--bg);cursor:pointer;text-align:left;transition:var(--transition)}.modal-gallery-item:hover{border-color:var(--accent);transform:translateY(-2px)}.modal-gallery-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.modal-gallery-item span{display:block;padding:6px 8px 8px;font-size:.72rem;color:var(--text-muted);line-height:1.4}.image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:24px}.image-lightbox img{max-width:min(960px,100%);max-height:90vh;object-fit:contain;border-radius:8px}.lightbox-close{position:absolute;top:20px;right:24px;width:40px;height:40px;border:none;border-radius:8px;background:rgba(255,255,255,.15);color:#fff;font-size:1.5rem;cursor:pointer}@media (max-width: 768px){.modal-gallery-grid{grid-template-columns:repeat(2,1fr)}.modal-cover{margin:-32px -32px 16px;height:160px}}@media (max-width: 1280px){.works-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.hero-layout{grid-template-columns:1fr}.hero-visual{display:none}.featured-row{grid-template-columns:1fr}.works-grid{grid-template-columns:repeat(2,1fr)}.process-rail{grid-template-columns:1fr;gap:0}.process-rail:before{top:0;bottom:0;left:17px;right:auto;width:1px;height:auto;background:linear-gradient(180deg,transparent,rgba(91,108,240,.35),transparent)}.process-node{display:grid;grid-template-columns:36px 1fr;gap:16px;padding:0 0 28px}.process-index{margin-bottom:0}.process-body p{max-width:none}.features-layout{grid-template-columns:1fr;gap:28px}.features-intro>p{max-width:none}.reviews-board{grid-template-columns:1fr}.contact-shell{grid-template-columns:1fr;padding:28px 24px}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.container{padding:0 14px}.nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;background:var(--bg-card);padding:16px;border-bottom:1px solid var(--border);gap:12px;box-shadow:var(--shadow)}.nav-links.open,.menu-toggle{display:flex}.stats-grid{grid-template-columns:repeat(2,1fr)}.works-grid,.contact-inner,.contact-cta-inner,.contact-shell,.form-row,.footer-grid{grid-template-columns:1fr}.section-header-row{flex-direction:column;align-items:flex-start;gap:8px}.modal-info-row{grid-template-columns:1fr}.portal-hint-inner{padding:18px 16px}.review-featured{padding:28px 22px 24px}.review-featured-quote{font-size:1.05rem}.process,.features,.reviews{padding:52px 0}}.auth-body{overflow-x:hidden}.auth-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.auth-bg-img{width:100%;height:100%;object-fit:cover;object-position:center}.auth-bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,rgba(15,20,45,.88) 0%,rgba(15,20,45,.65) 45%,rgba(15,20,45,.35) 100%),linear-gradient(to top,rgba(15,20,45,.5) 0%,transparent 40%)}.navbar-auth{background:rgba(15,20,45,.3)!important;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.1)!important}.logo-light{color:#fff!important;background:#fff;border-radius:10px;padding:4px 10px}.logo-light .logo-img{height:32px}.nav-links-light a{color:#ffffffbf!important}.nav-links-light a:hover{color:#fff!important}.nav-links-light .nav-portal-link{color:#ffffffe6}.nav-links-light .nav-portal-link:hover{color:#fff}.menu-toggle-light span{background:#fff!important}.navbar-auth .nav-links.open{background:rgba(15,20,45,.95)!important}.auth-page{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;padding:100px 20px 48px}.auth-layout{display:grid;grid-template-columns:1fr 440px;gap:60px;align-items:center;width:100%;max-width:1200px;margin:0 auto}.auth-hero{color:#fff}.auth-hero-logo{height:48px;width:auto;display:block;margin-bottom:20px;padding:10px 14px;background:#fff;border-radius:12px}.auth-hero-badge{display:inline-block;padding:6px 16px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:100px;font-size:var(--fs-sm);margin-bottom:24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.auth-hero h1{font-family:Playfair Display,Noto Sans SC,serif;font-size:clamp(2.2rem,4vw,3.2rem);font-weight:700;line-height:1.2;margin-bottom:20px}.auth-hero h1 span{background:linear-gradient(135deg,#a5b4fc,#f9a8d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-hero-desc{font-size:var(--fs-base);line-height:1.8;color:#ffffffc7;max-width:520px;margin-bottom:32px}.auth-hero-stats{display:flex;gap:32px;margin-bottom:36px}.hero-stat{display:flex;flex-direction:column}.hero-stat strong{font-size:var(--fs-3xl);font-weight:700;color:#a5b4fc;line-height:1.2}.hero-stat span{font-size:var(--fs-sm);color:#fff9;margin-top:2px}.auth-quote{padding:16px 20px;border-left:3px solid #a5b4fc;background:rgba(255,255,255,.06);border-radius:0 12px 12px 0;font-size:var(--fs-base);font-style:italic;color:#ffffffb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:420px}.auth-card{position:relative;border-radius:20px;overflow:hidden}.auth-card-glow{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;background:linear-gradient(135deg,rgba(165,180,252,.5),rgba(249,168,212,.3),rgba(165,180,252,.2));border-radius:21px;z-index:0}.auth-form-wrap{position:relative;z-index:1;padding:36px 32px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:20px;border:1px solid rgba(255,255,255,.6);box-shadow:0 24px 64px #00000040}.auth-card-header{margin-bottom:24px}.auth-card-logo{height:40px;width:auto;display:block;margin-bottom:16px}.auth-card-header h2{font-size:var(--fs-2xl);font-weight:700;margin-bottom:4px}.auth-card-header p{font-size:var(--fs-sm);color:var(--text-muted)}.auth-tabs{display:flex;gap:0;margin-bottom:24px;background:var(--bg);border-radius:10px;padding:4px}.auth-tab{flex:1;padding:10px;background:none;border:none;border-radius:8px;font-size:var(--fs-sm);font-weight:600;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:var(--transition)}.auth-tab.active{background:#fff;color:var(--accent);box-shadow:0 2px 8px #0000000f}.auth-form{display:none;flex-direction:column;gap:14px}.auth-form.active{display:flex}.form-group{display:flex;flex-direction:column;gap:5px}.form-group label{font-size:var(--fs-sm);font-weight:500;color:var(--text)}.form-group input{padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-family:inherit;outline:none;transition:border-color var(--transition),box-shadow var(--transition);background:#fff}.form-group input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5b6cf01f}.captcha-row{display:flex;gap:10px;align-items:stretch}.captcha-row input{flex:1;padding:11px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-sm);font-family:inherit;outline:none;background:#fff}.captcha-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #5b6cf01f}.captcha-box{display:flex;align-items:center;gap:6px;flex-shrink:0}.captcha-canvas{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;display:block}.captcha-refresh{width:36px;height:36px;border:1px solid var(--border);background:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--fs-base);display:flex;align-items:center;justify-content:center;transition:var(--transition)}.captcha-refresh:hover{border-color:var(--accent);color:var(--accent)}.btn-auth{padding:13px;font-size:var(--fs-base);margin-top:4px;border-radius:10px}.auth-error{padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:var(--radius-sm);font-size:var(--fs-sm);display:none}.auth-error.show{display:block}.auth-success{padding:10px 14px;background:#ecfdf5;border:1px solid #a7f3d0;color:#059669;border-radius:var(--radius-sm);font-size:var(--fs-sm);display:none}.auth-success.show{display:block}.auth-footer-link{text-align:center;margin-top:18px;font-size:var(--fs-sm);color:var(--text-muted)}.auth-footer-link a{color:var(--accent);text-decoration:none}.auth-footer-link a:hover{text-decoration:underline}.auth-portal-tip{margin-top:16px;font-size:var(--fs-sm);color:var(--text-muted);text-align:center;line-height:1.5}.auth-icp{margin-top:14px;font-size:var(--fs-xs);text-align:center}.auth-icp a{color:var(--text-muted);text-decoration:none}.auth-icp a:hover{color:var(--accent);text-decoration:underline}.auth-portal-link{border:none;background:none;padding:0;font:inherit;font-weight:700;color:var(--accent);cursor:pointer}.auth-portal-link:hover{text-decoration:underline}.nav-auth{display:flex;align-items:center;gap:10px;margin-left:8px}.nav-auth .btn-nav{padding:7px 16px;font-size:var(--fs-sm);border-radius:8px;text-decoration:none;font-weight:500;transition:var(--transition)}.btn-nav-login{color:var(--text-muted);border:1px solid var(--border);background:var(--bg-card)}.btn-nav-login:hover{border-color:var(--accent);color:var(--accent)}.btn-nav-register{background:var(--accent);color:#fff!important;border:none}.btn-nav-register:hover{background:var(--accent-light)}.nav-user{display:flex;align-items:center;gap:10px;position:relative}.nav-user-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg);border:1px solid var(--border);border-radius:100px;cursor:pointer;font-family:inherit;font-size:var(--fs-sm);transition:var(--transition)}.nav-user-btn:hover{border-color:var(--accent)}.nav-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:600}.nav-user-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover);padding:6px;display:none;z-index:200}.nav-user-menu.open{display:block}.nav-user-menu a,.nav-user-menu button{display:block;width:100%;padding:10px 14px;text-align:left;font-size:var(--fs-sm);color:var(--text);text-decoration:none;background:none;border:none;border-radius:6px;cursor:pointer;font-family:inherit;transition:var(--transition)}.nav-user-menu a:hover,.nav-user-menu button:hover{background:var(--bg);color:var(--accent)}.nav-user-menu .nav-menu-portal{font-weight:600;color:var(--accent)}.nav-user-menu .logout-btn{color:#dc2626;border-top:1px solid var(--border);margin-top:4px;padding-top:10px}.nav-user-menu .logout-btn:hover{background:#fef2f2;color:#dc2626}@media (max-width: 1024px){.auth-layout{grid-template-columns:1fr;max-width:440px;gap:32px}.auth-hero{text-align:center}.auth-hero-desc,.auth-quote{margin-left:auto;margin-right:auto}.auth-hero-stats{justify-content:center}.auth-quote{text-align:left}}@media (max-width: 768px){.auth-page{padding:90px 16px 32px}.auth-form-wrap{padding:28px 22px}.auth-hero h1{font-size:var(--fs-3xl)}.auth-hero-stats{gap:20px}.hero-stat strong{font-size:var(--fs-xl)}.nav-auth{flex-direction:column;width:100%;margin-left:0;margin-top:8px}.nav-auth .btn-nav{width:100%;text-align:center}}.topics-hero{position:relative;padding:112px 0 52px;overflow:hidden;background:radial-gradient(ellipse 55% 70% at 0% 0%,rgba(91,108,240,.12),transparent 55%),radial-gradient(ellipse 45% 55% at 100% 10%,rgba(232,127,160,.08),transparent 50%),linear-gradient(180deg,#f7f8fc 0%,#eef1f8 55%,#f8f9fc 100%);border-bottom:1px solid rgba(15,23,42,.06)}.topics-hero-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.9}.hero-orb-a{width:360px;height:360px;top:-120px;right:-40px;background:radial-gradient(circle,rgba(91,108,240,.16),transparent 70%);animation:hero-orb-float 14s ease-in-out infinite}.hero-orb-b{width:280px;height:280px;bottom:-100px;left:6%;background:radial-gradient(circle,rgba(232,127,160,.1),transparent 72%);animation:hero-orb-float 18s ease-in-out infinite reverse}.hero-rail{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.45),transparent 88%);mask-image:linear-gradient(180deg,rgba(0,0,0,.45),transparent 88%)}@keyframes hero-orb-float{0%,to{transform:translateZ(0)}50%{transform:translate3d(-12px,10px,0)}}.topics-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.9fr);gap:36px 44px;align-items:center}.topics-eyebrow,.library-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;font-size:var(--fs-sm);font-weight:700;letter-spacing:.04em;color:var(--accent)}.eyebrow-mark{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px #5b6cf029}.library-eyebrow{color:var(--accent)}.library-eyebrow .eyebrow-mark{background:var(--accent);box-shadow:0 0 0 3px #5b6cf024}.topics-hero h1{font-family:Playfair Display,Noto Sans SC,serif;font-size:clamp(2.1rem,3.6vw,2.85rem);font-weight:700;letter-spacing:-.02em;line-height:1.18;color:var(--text);margin:0 0 14px}.hero-title-accent{display:block;margin-top:8px;font-family:Noto Sans SC,sans-serif;font-size:var(--fs-base);font-weight:600;letter-spacing:.04em;color:var(--text-muted)}.topics-lead{max-width:34em;color:var(--text-secondary);font-size:var(--fs-md);line-height:1.75;font-weight:500;margin:0 0 24px}.topics-hero-cta{display:flex;flex-wrap:wrap;gap:12px}.topics-hero .studio-cta,.topic-library .studio-cta,.search-submit{background:var(--accent)!important;box-shadow:0 8px 22px #5b6cf038!important}.topics-hero .studio-cta:hover,.topic-library .studio-cta:hover,.search-submit:hover{background:var(--accent-light)!important;filter:none}.topics-ghost-btn{border-color:#0f172a1f!important;color:var(--text-secondary)!important;background:#fff!important}.topics-ghost-btn:hover{border-color:#5b6cf059!important;color:var(--accent)!important}.topics-paths{display:grid;gap:12px}.topics-path{position:relative;display:grid;grid-template-columns:76px 1fr;min-height:108px;text-decoration:none;color:inherit;border:1px solid rgba(15,23,42,.08);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.88);transition:transform .3s ease,border-color .25s ease,box-shadow .3s ease}.topics-path:hover{transform:translateY(-2px);border-color:#5b6cf047;box-shadow:0 14px 36px #0f172a14}.topics-path-featured{border-color:#5b6cf038;background:linear-gradient(145deg,#ffffff 0%,#f3f5ff 100%)}.topics-path-featured:hover{border-color:#5b6cf066}.path-side{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:rgba(91,108,240,.06);border-right:1px solid rgba(15,23,42,.06)}.path-idx{font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:var(--fs-lg);font-weight:600;color:var(--accent);line-height:1}.path-badge{font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;padding:3px 8px;border-radius:8px;color:#fff;background:var(--accent)}.path-body{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:16px 18px}.topics-path strong{display:block;font-size:var(--fs-lg);color:var(--text);font-weight:700}.topics-path .path-body>span{display:block;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.55}.topics-path em{margin-top:2px;font-style:normal;font-size:var(--fs-sm);font-weight:700;color:var(--accent)}.nav-links a.active{color:var(--accent);font-weight:600}#selectionCount{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:rgba(255,255,255,.25);border-radius:100px;font-size:var(--fs-xs);margin-left:4px}.topic-library{padding:48px 0 72px;background:linear-gradient(180deg,#f5f6fb 0%,#fafbfe 45%,#ffffff 100%)}.library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.library-title{font-family:Playfair Display,Noto Sans SC,serif;font-size:var(--fs-3xl);font-weight:700;color:var(--text);letter-spacing:-.02em;margin:0 0 10px}.library-sub{margin:0;max-width:40em;font-size:var(--fs-base);line-height:1.7;color:var(--text-secondary);font-weight:500}.library-count-chip{flex-shrink:0;display:grid;gap:4px;min-width:104px;padding:12px 16px;text-align:right;border-radius:14px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 8px 24px #0f172a0a}.library-count-chip span{font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:.04em;font-weight:600}.library-count-chip strong{font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:var(--fs-2xl);font-weight:700;color:var(--accent);line-height:1}.library-panel{margin-bottom:28px;padding:18px 20px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:18px;box-shadow:0 12px 36px #0f172a0a}.library-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}.search-box{position:relative;display:flex;gap:10px;flex:1;min-width:260px;align-items:center}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-faint);font-size:1.1rem;pointer-events:none;z-index:1}.search-box input{flex:1;padding:13px 16px 13px 40px;border:1px solid rgba(15,23,42,.1);border-radius:12px;font-size:var(--fs-base);font-family:inherit;outline:none;background:#f7f8fb;color:var(--text);transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}.search-box input:focus{border-color:#5b6cf066;background:#fff;box-shadow:0 0 0 4px #5b6cf01a}.search-submit{padding:12px 20px!important;white-space:nowrap}.difficulty-select{padding:12px 14px;border:1px solid rgba(15,23,42,.1);border-radius:12px;font-size:var(--fs-base);font-family:inherit;background:#f7f8fb;color:var(--text);cursor:pointer;outline:none;min-width:132px}.difficulty-select:focus{border-color:#5b6cf066;box-shadow:0 0 0 4px #5b6cf01a}.topic-library .category-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding-top:12px;border-top:1px solid rgba(15,23,42,.06)}.topic-library .category-tag{padding:8px 14px;border-radius:10px;border:1px solid rgba(15,23,42,.1);background:#fff;color:var(--text-secondary);font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease}.topic-library .category-tag:hover{color:var(--accent);border-color:#5b6cf04d;background:#f5f6ff}.topic-library .category-tag.active{color:#fff;background:var(--accent);border-color:transparent;font-weight:700}.topics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;min-height:200px}.topics-grid .topic-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(30,34,53,.07);border-radius:16px;padding:0;cursor:pointer;overflow:hidden;min-height:0;box-shadow:0 4px 18px #16192508;transition:transform .4s cubic-bezier(.22,1,.36,1),border-color .35s ease,box-shadow .4s ease}.topics-grid .topic-card:hover{transform:translateY(-4px);border-color:#2a314829;box-shadow:0 18px 44px #1619251a}.topics-grid .topic-card.selected{border-color:#5b6cf073;box-shadow:0 12px 36px #5b6cf01f}.topic-card-cover{position:relative;display:flex;align-items:center;justify-content:center;height:108px;overflow:hidden}.topic-visual-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.28),transparent 42%),linear-gradient(160deg,rgba(255,255,255,.12),transparent 60%);opacity:.9;transition:transform .55s cubic-bezier(.22,1,.36,1)}.topics-grid .topic-card:hover .topic-visual-pattern{transform:scale(1.08)}.cover-emoji{position:relative;z-index:1;font-size:var(--fs-3xl);filter:drop-shadow(0 6px 14px rgba(0,0,0,.22))}.topic-card-main{flex:1;min-width:0;padding:16px 16px 14px;display:flex;flex-direction:column}.topic-card-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.topic-card-meta .topic-cat,.topic-card-meta .topic-diff{font-size:var(--fs-xs);font-weight:600;letter-spacing:.02em}.topic-card-meta .topic-cat{color:#5b6cf0}.topic-card-meta .topic-diff{color:var(--text-muted)}.topic-card-meta .topic-diff.入门{color:#3d8b6e}.topic-card-meta .topic-diff.中等{color:#b07a2e}.topic-card-meta .topic-diff.进阶{color:#b04a4a}.topic-card h3{font-size:var(--fs-base);line-height:1.4;margin:0 0 8px;font-weight:700;color:var(--text);letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.topic-card p{font-size:var(--fs-xs);color:var(--text-muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 12px}.topic-features{margin-bottom:12px}.topic-feature-tags{display:flex;flex-wrap:wrap;gap:6px}.topic-feature-tag{font-size:var(--fs-xs);padding:3px 8px;border-radius:6px;background:#f2f3f8;color:#4a5168;font-weight:500}.topic-feature-more{font-size:var(--fs-xs);padding:3px 4px;color:var(--text-muted);font-weight:600}.topic-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;border-top:1px solid rgba(30,34,53,.06)}.topic-tech{font-size:var(--fs-xs);color:var(--text-muted);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grid-empty{grid-column:1 / -1;text-align:center;padding:48px 16px;color:var(--text-muted)}.topic-actions{display:flex;gap:6px}.topic-btn{padding:6px 12px;font-size:var(--fs-xs);border-radius:8px;border:1px solid rgba(30,34,53,.1);background:#fff;cursor:pointer;font-family:inherit;font-weight:600;transition:background .25s ease,border-color .25s ease,color .25s ease}.topic-btn:hover{border-color:var(--accent);color:var(--accent)}.topic-btn.select-btn{background:#eef0f6;border-color:#d8dde9;color:#3d4a78}.topic-btn.select-btn:hover{background:#e4e8f2;border-color:#c8cfdf;color:#2f3a63}.topic-btn.select-btn.selected{background:#e6f4ee;border-color:#c5e4d6;color:#1f8a64}.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:36px;flex-wrap:wrap}.page-btn{min-width:36px;height:36px;padding:0 10px;border:1px solid rgba(30,34,53,.1);background:#fff;border-radius:10px;font-size:var(--fs-sm);font-family:inherit;cursor:pointer;transition:border-color .25s ease,color .25s ease,background .25s ease}.page-btn:hover{border-color:#c8cfdf;color:#3d4a78;background:#eef0f6}.page-btn.active{background:#e8ebf4;border-color:#d5dae8;color:#3d4a78}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-info{font-size:var(--fs-sm);color:var(--text-muted);margin:0 8px}.library-sub{margin:8px 0 0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5}.custom-requirement{padding:0;border-top:none;background:transparent}.custom-stage{position:relative;padding:64px 0 72px;overflow:hidden;background:radial-gradient(ellipse 50% 60% at 8% 20%,rgba(14,165,160,.12),transparent 55%),radial-gradient(ellipse 40% 50% at 92% 80%,rgba(37,99,235,.1),transparent 50%),linear-gradient(165deg,#e8eef6 0%,#f3f6fb 42%,#fafbfd 100%);border-block:1px solid rgba(15,23,42,.06)}.custom-stage-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 20%,transparent 75%);animation:custom-grid-drift 28s linear infinite}@keyframes custom-grid-drift{0%{background-position:0 0,0 0}to{background-position:48px 48px,48px 48px}}.custom-stage-grid{position:relative;display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.55fr);gap:40px 48px;align-items:start}.custom-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;font-size:var(--fs-sm);font-weight:700;letter-spacing:.04em;color:#0f766e}.custom-kicker-dot{width:8px;height:8px;border-radius:50%;background:#14b8a6;box-shadow:0 0 0 4px #14b8a62e;animation:custom-pulse 2.2s ease-in-out infinite}@keyframes custom-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.86);opacity:.7}}.custom-stage-copy h2{font-family:Playfair Display,Noto Sans SC,serif;font-size:clamp(1.7rem,2.4vw,2.2rem);font-weight:700;letter-spacing:-.02em;line-height:1.28;color:var(--text);margin:0 0 14px}.custom-stage-lead{margin:0 0 32px;font-size:var(--fs-md);line-height:1.8;color:var(--text-secondary);max-width:32em;font-weight:500}.custom-flow{list-style:none;margin:0;padding:0;display:grid;gap:18px}.custom-flow li{display:grid;grid-template-columns:2.4rem 1fr;gap:12px;align-items:start;padding:0;background:transparent;border:none}.flow-step{font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:var(--fs-base);font-weight:600;letter-spacing:.02em;color:#0f766e;line-height:1.55;padding-top:1px}.custom-flow strong{display:block;font-size:var(--fs-md);color:var(--text);margin-bottom:4px;font-weight:700;line-height:1.4}.custom-flow span{display:block;font-size:var(--fs-base);color:var(--text-muted);line-height:1.6;font-weight:500}.custom-studio{background:rgba(255,255,255,.78);border:1px solid rgba(15,23,42,.08);border-radius:24px;padding:16px;box-shadow:0 1px #fffc inset,0 24px 64px #0f172a14;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.custom-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:14px;align-items:stretch}.custom-form-wrap{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);border:1px solid rgba(15,23,42,.06);border-radius:18px;padding:22px}.custom-form-wrap label{display:block;font-size:var(--fs-base);font-weight:700;margin-bottom:10px;color:var(--text)}.custom-form-wrap textarea{width:100%;padding:16px 18px;border:1px solid rgba(15,23,42,.12);border-radius:14px;font-size:var(--fs-base);font-family:inherit;resize:vertical;min-height:150px;outline:none;transition:border-color .25s ease,box-shadow .25s ease;margin-bottom:14px;background:#fff;color:var(--text);line-height:1.7}.custom-form-wrap textarea::placeholder{color:var(--text-muted)}.custom-form-wrap textarea:focus{border-color:#0d948873;box-shadow:0 0 0 4px #0d94881f}.custom-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.custom-mode-btn{text-align:left;border:1px solid rgba(15,23,42,.1);background:#f8fafc;color:var(--text-muted);padding:16px 18px;border-radius:16px;font-size:var(--fs-base);cursor:pointer;transition:border-color .25s ease,background .25s ease,color .25s ease,transform .25s ease}.custom-mode-btn:hover{transform:translateY(-1px);border-color:#0d948840}.custom-mode-btn em{display:block;font-style:normal;font-size:var(--fs-sm);letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px;font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-weight:600}.custom-mode-btn strong{display:block;font-size:var(--fs-md);color:var(--text);margin-bottom:6px;font-weight:700;line-height:1.35}.custom-mode-btn span{display:block;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.5;font-weight:500}.custom-mode-btn.active{border-color:#0d948866;background:linear-gradient(145deg,#ecfdf9 0%,#f0fdfa 100%);box-shadow:0 0 0 1px #0d948814}.custom-mode-btn.active em{color:#0f766e}.custom-mode-btn.active strong{color:var(--text)}.custom-mode-btn.active span{color:var(--text-secondary)}.ready-layout{max-width:none}.ready-form{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);border:1px solid rgba(15,23,42,.06);border-radius:18px;padding:22px 22px 24px;box-shadow:none}.ready-form-banner{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid rgba(15,23,42,.08)}.ready-form-banner strong{font-family:Playfair Display,Noto Sans SC,serif;font-size:var(--fs-xl);color:var(--text);font-weight:700}.ready-form-banner span{font-size:var(--fs-base);color:var(--text-muted);font-weight:500}.ready-field{margin-bottom:4px}.ready-features-block{margin:8px 0 4px;padding:14px;background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:14px}.ready-feat-idx{flex-shrink:0;width:28px;font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:var(--fs-sm);color:var(--text-muted);line-height:42px}.ai-result-wrap{position:relative;background:linear-gradient(165deg,#0f172a 0%,#1e293b 55%,#172554 100%);border:1px solid rgba(148,163,184,.18);border-radius:18px;min-height:440px;overflow:hidden;color:#e2e8f0}.ai-result-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.07) 1px,transparent 1px);background-size:28px 28px;opacity:.45;pointer-events:none}.ai-result-wrap.is-live{border-color:#2dd4bf59}.btn-soft{background:#e8ebf4;color:#3d4a78;border:1px solid #d5dae8;box-shadow:none}.btn-soft:hover{background:#dde2ef;color:#2f3a63;transform:none}.btn-soft:disabled{opacity:.6;cursor:not-allowed}.studio-cta{background:linear-gradient(135deg,#0d9488 0%,#0891b2 100%);color:#fff!important;border:none;box-shadow:0 10px 28px #0d948847;font-weight:700;letter-spacing:.01em;font-size:var(--fs-base)}.studio-cta:hover{filter:brightness(1.05);transform:translateY(-1px);color:#fff!important}.studio-cta:disabled{opacity:.65;cursor:not-allowed;transform:none;filter:none}.ready-form label{display:block;font-size:var(--fs-base);font-weight:700;margin:14px 0 8px;color:var(--text)}.ready-field>label:first-child,.ready-features-head label{margin-top:0}.ready-form .req{color:#c0392b}.ready-form input,.ready-form textarea,.ready-form select{width:100%;padding:13px 14px;border:1px solid rgba(15,23,42,.12);border-radius:12px;font-size:var(--fs-base);font-family:inherit;outline:none;background:#fff;color:var(--text)}.ready-form input::placeholder,.ready-form textarea::placeholder{color:var(--text-muted)}.ready-form input:focus,.ready-form textarea:focus,.ready-form select:focus{border-color:#0d948873;box-shadow:0 0 0 4px #0d94881f}.ready-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ready-features-head{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.ready-features-head label{margin:0}.ready-tip{font-size:var(--fs-base);color:var(--text-muted);margin:6px 0 10px;line-height:1.55;font-weight:500}.ready-feature-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.ready-feature-row input{flex:1}.ready-del{border:1px solid rgba(15,23,42,.1);background:#fff;border-radius:10px;padding:0 12px;cursor:pointer;color:#c0392b}.ready-form .btn-full,.custom-form-wrap .btn-full{margin-top:8px;width:100%}.form-hints{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}.form-hints>span{font-size:var(--fs-base);color:var(--text-secondary);font-weight:700}.hint-btn{padding:8px 12px;font-size:var(--fs-sm);border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:10px;cursor:pointer;font-family:inherit;color:var(--text-secondary);font-weight:500;transition:border-color .2s ease,color .2s ease,background .2s ease}.hint-btn:hover{border-color:#0d948866;color:#0f766e;background:#f0fdfa}.ai-result-placeholder{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 36px;height:100%;min-height:440px}.placeholder-visual{position:relative;width:88px;height:88px;margin-bottom:22px}.placeholder-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(45,212,191,.35);border-radius:50%;animation:placeholder-spin 10s linear infinite}.placeholder-ring:after{content:"";position:absolute;top:-3px;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#2dd4bf}.placeholder-core{position:absolute;top:22px;right:22px;bottom:22px;left:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(45,212,191,.45),transparent 55%),rgba(15,23,42,.9);border:1px solid rgba(148,163,184,.2)}@keyframes placeholder-spin{to{transform:rotate(360deg)}}.ai-result-placeholder h3{font-size:var(--fs-xl);margin-bottom:12px;color:#fff;font-weight:700;line-height:1.35}.ai-result-placeholder p{font-size:var(--fs-base);color:#e2e8f0;max-width:360px;line-height:1.75;margin:0;font-weight:500}.placeholder-checklist{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.placeholder-checklist li{font-size:var(--fs-sm);color:#99f6e4;padding:8px 14px;border:1px solid rgba(45,212,191,.35);border-radius:10px;background:rgba(20,184,166,.18);font-weight:600}.ai-result{position:relative;z-index:1;padding:24px;animation:fadeInUp .45s ease}.ai-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(148,163,184,.18)}.ai-result-label{margin:0 0 8px;font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase;color:#5eead4;font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-weight:600}.ai-result-header h3{font-size:var(--fs-xl);line-height:1.5;color:#fff;margin:0;font-weight:700}.ai-mock-badge{font-size:var(--fs-sm);padding:5px 11px;background:rgba(251,191,36,.15);color:#fcd34d;border:1px solid rgba(251,191,36,.35);border-radius:10px;white-space:nowrap;font-weight:700}.ai-real-badge{background:rgba(45,212,191,.14);color:#5eead4;border-color:#2dd4bf59}.ai-summary{font-size:var(--fs-base);color:var(--text-on-dark-muted);line-height:1.8;margin-bottom:18px;padding:14px 16px;background:rgba(15,23,42,.45);border-radius:12px;border-left:3px solid #2dd4bf;font-weight:500}.ai-meta-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.ai-meta-item{padding:14px 10px;background:rgba(15,23,42,.4);border-radius:12px;border:1px solid rgba(148,163,184,.14);text-align:center}.ai-meta-item strong{display:block;font-size:var(--fs-sm);color:#cbd5e1;margin-bottom:8px;font-weight:600}.ai-meta-item span{font-size:var(--fs-base);font-weight:700;color:#5eead4}.ai-section{margin-bottom:18px}.ai-section h4{font-size:var(--fs-base);color:#e2e8f0;margin-bottom:12px;letter-spacing:.02em;font-weight:700}.ai-features{list-style:none;margin:0;padding:0}.ai-features li{padding:12px 14px;font-size:var(--fs-base);background:rgba(15,23,42,.35);border:1px solid rgba(148,163,184,.12);border-radius:12px;margin-bottom:8px;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;color:#f1f5f9;line-height:1.65;font-weight:500}.ai-features li em{font-style:normal;font-family:JetBrains Mono,SF Mono,Consolas,monospace;font-size:var(--fs-sm);color:#2dd4bf;line-height:1.7;font-weight:600}.ai-tech-tags{display:flex;flex-wrap:wrap;gap:8px}.ai-result-wrap .highlight-tag{background:rgba(45,212,191,.12);color:#99f6e4;border:1px solid rgba(45,212,191,.28);border-radius:10px;padding:8px 12px;font-size:var(--fs-sm);font-weight:600}.ai-suggestions{list-style:none;margin:0;padding:0}.ai-suggestions li{font-size:var(--fs-base);color:#e2e8f0;padding:10px 0 10px 18px;position:relative;line-height:1.65;border-bottom:1px solid rgba(148,163,184,.1);font-weight:500}.ai-suggestions li:last-child{border-bottom:none}.ai-suggestions li:before{content:"";position:absolute;left:0;top:16px;width:6px;height:6px;border-radius:50%;background:#2dd4bf}.ai-result-actions{display:flex;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(148,163,184,.16)}.ai-result-actions .btn-outline{border-color:#94a3b873;color:#f1f5f9;background:transparent;font-weight:600}.ai-result-actions .btn-outline:hover{border-color:#2dd4bf;color:#5eead4}.ai-loading{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:440px;gap:12px;padding:40px 28px;text-align:center;overflow:hidden}.ai-loading strong{color:#fff;font-size:var(--fs-xl);font-weight:700}.ai-loading p{margin:0;max-width:340px;color:var(--text-on-dark-muted);font-size:var(--fs-base);line-height:1.7;font-weight:500}.ai-orbit{position:relative;width:64px;height:64px;margin-bottom:8px}.ai-orbit span{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid transparent;border-top-color:#2dd4bf;border-radius:50%;animation:spin 1.1s linear infinite}.ai-orbit span:nth-child(2){top:8px;right:8px;bottom:8px;left:8px;border-top-color:#38bdf8;animation-duration:1.6s;animation-direction:reverse}.ai-orbit span:nth-child(3){top:16px;right:16px;bottom:16px;left:16px;border-top-color:#94a3b880;animation-duration:2.1s}.ai-scanline{position:absolute;left:8%;right:8%;height:2px;background:linear-gradient(90deg,transparent,rgba(45,212,191,.65),transparent);animation:ai-scan 2.4s ease-in-out infinite;pointer-events:none}@keyframes ai-scan{0%{top:18%;opacity:0}20%{opacity:1}80%{opacity:1}to{top:82%;opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}.my-selection{padding:48px 0;border-top:1px solid var(--border)}.selection-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.selection-empty{grid-column:1 / -1;text-align:center;padding:40px;color:var(--text-muted);background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius)}.selection-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.selection-item-info h4{font-size:var(--fs-sm);margin-bottom:4px;line-height:1.35}.selection-item-info span{font-size:var(--fs-xs);color:var(--text-muted)}.selection-remove{padding:4px 10px;font-size:var(--fs-xs);border:1px solid #fca5a5;background:#fef2f2;color:#dc2626;border-radius:6px;cursor:pointer;font-family:inherit;flex-shrink:0}.selection-remove:hover{background:#fee2e2}.footer-bottom a{color:var(--accent);text-decoration:none}.footer-bottom a:hover{text-decoration:underline}.topic-detail-modal{max-width:720px;max-height:88vh;overflow-y:auto;padding:0}.topic-detail-modal .modal-close{z-index:2;color:#fff;background:rgba(0,0,0,.25);border-radius:50%;width:36px;height:36px;line-height:32px}.topic-cover{display:flex;align-items:flex-start;gap:16px;padding:28px 24px 22px;color:#fff;border-radius:var(--radius) var(--radius) 0 0}.topic-cover-emoji{font-size:48px;line-height:1;flex-shrink:0;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}.topic-cover-body{flex:1;min-width:0}.topic-cover h2{margin:8px 0 0;font-size:var(--fs-xl);line-height:1.45;color:#fff}.modal-meta-light{color:#ffffffeb;font-size:var(--fs-sm)}.modal-meta-light span{color:#ffffffeb}.topic-detail-modal .modal-desc{margin:16px 24px;padding:14px 16px;background:#f8f9fd;border-radius:var(--radius-sm);line-height:1.75}.topic-detail-modal .modal-section{padding:0 24px 20px}.feature-group{margin-bottom:18px;padding:16px 18px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm)}.feature-group-title{margin:0 0 12px;font-size:var(--fs-base);font-weight:700;color:var(--accent)}.feature-numbered-list{margin:0;padding-left:1.35em;font-size:var(--fs-sm);color:#333;line-height:1.85}.feature-numbered-list li{margin-bottom:8px;padding-left:4px}.feature-numbered-list li::marker{color:var(--accent);font-weight:700}.topic-detail-modal .ai-result-actions{padding:0 24px 24px}.topic-custom-note{margin:0 24px 16px;padding:12px 14px;font-size:var(--fs-sm);line-height:1.65;color:#4a5168;background:#f3f5fb;border:1px solid rgba(91,108,240,.12);border-radius:12px}.topic-detail-loading{padding:40px;text-align:center;color:var(--text-muted)}.section-intro{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:14px;line-height:1.7}.module-detail-list{display:flex;flex-direction:column;gap:12px}.module-detail-card{padding:14px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm)}.module-detail-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.module-index{width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-size:var(--fs-xs);font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.module-detail-card strong{font-size:var(--fs-base)}.module-detail-card p{margin:0;font-size:var(--fs-sm);color:var(--text-muted);line-height:1.7;padding-left:34px}@media (max-width: 1280px){.topics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1024px){.topics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topics-hero-inner,.custom-stage-grid,.custom-layout{grid-template-columns:1fr}.selection-list{grid-template-columns:repeat(2,1fr)}.ready-row{grid-template-columns:1fr}}@media (max-width: 768px){.topics-grid{grid-template-columns:1fr}.topics-hero{padding:100px 0 40px}.topics-hero-inner{grid-template-columns:1fr;gap:28px}.topics-path{grid-template-columns:72px 1fr;min-height:104px}.library-head{flex-direction:column;align-items:flex-start}.library-count-chip{text-align:left;align-self:stretch}.custom-mode-switch{grid-template-columns:1fr}.difficulty-select{width:100%}.selection-list{grid-template-columns:1fr}.search-box{max-width:100%}.library-toolbar{flex-direction:column;align-items:stretch}.ai-meta-row{grid-template-columns:1fr}.ready-form-banner{flex-direction:column;align-items:flex-start}}
