.avatar-img[data-v-8a843d8b]{border-radius:50%;object-fit:cover;border:2px solid var(--c-primary-soft);flex-shrink:0}.nav[data-v-78e7cd6b]{position:fixed;top:0;left:0;right:0;height:62px;background:var(--nav-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--c-line);z-index:100;transition:background-color .35s ease}.nav-inner[data-v-78e7cd6b]{height:100%;display:flex;align-items:center;gap:30px}.logo[data-v-78e7cd6b]{font-weight:800;font-size:18px;color:var(--c-ink);letter-spacing:.5px;white-space:nowrap}.links[data-v-78e7cd6b]{display:flex;gap:6px;flex:1}.links a[data-v-78e7cd6b]{color:var(--c-text);padding:7px 13px;border-radius:8px;font-size:14.5px;position:relative;transition:color .18s,background .18s}.links a[data-v-78e7cd6b]:hover{color:var(--c-primary);background:var(--c-primary-soft)}.links a.router-link-exact-active[data-v-78e7cd6b]{color:var(--c-primary);font-weight:600}.links a.router-link-exact-active[data-v-78e7cd6b]:after{content:"";position:absolute;left:13px;right:13px;bottom:2px;height:3px;border-radius:2px;background:var(--c-primary)}.user-area[data-v-78e7cd6b]{display:flex;align-items:center;gap:14px}.user-area a[data-v-78e7cd6b]{color:var(--c-text);font-size:14px}.user-area a[data-v-78e7cd6b]:hover{color:var(--c-primary)}.me[data-v-78e7cd6b]{display:flex;align-items:center;gap:8px}.avatar[data-v-78e7cd6b]{width:30px;height:30px;border-radius:50%;object-fit:cover;border:2px solid var(--c-primary-soft)}.guest[data-v-78e7cd6b]{color:var(--c-text-light);font-size:13px}.register-btn[data-v-78e7cd6b]{background:var(--c-primary);color:#fff!important;padding:7px 16px;border-radius:8px;transition:background .18s,transform .15s}.register-btn[data-v-78e7cd6b]:hover{background:var(--c-primary-deep);transform:translateY(-1px)}.logout-btn[data-v-78e7cd6b]{padding:6px 14px;font-size:13px}.theme-btn[data-v-78e7cd6b]{background:transparent;font-size:17px;padding:5px 8px;line-height:1}.theme-btn[data-v-78e7cd6b]:hover{background:var(--c-primary-soft);transform:none;box-shadow:none}.hamburger[data-v-78e7cd6b]{display:none;background:transparent;font-size:20px;padding:6px 10px;color:var(--c-ink)}.hamburger[data-v-78e7cd6b]:hover{background:var(--c-primary-soft);box-shadow:none;transform:none}.mobile-menu[data-v-78e7cd6b]{display:none}@media (max-width: 860px){.links[data-v-78e7cd6b],.user-area .me-name[data-v-78e7cd6b],.user-area .guest[data-v-78e7cd6b],.user-area .login-link[data-v-78e7cd6b],.user-area .register-btn[data-v-78e7cd6b],.user-area .logout-btn[data-v-78e7cd6b]{display:none}.hamburger[data-v-78e7cd6b]{display:block}.nav-inner[data-v-78e7cd6b]{gap:12px;justify-content:space-between}.mobile-menu[data-v-78e7cd6b]{display:flex;flex-direction:column;background:var(--c-card);border-bottom:1px solid var(--c-line);box-shadow:var(--shadow-md);padding:8px 14px 14px}.mobile-menu a[data-v-78e7cd6b]{padding:11px 10px;color:var(--c-text);font-size:15px;border-radius:8px}.mobile-menu a[data-v-78e7cd6b]:hover{background:var(--c-primary-soft);color:var(--c-primary)}.menu-divider[data-v-78e7cd6b]{height:1px;background:var(--c-line);margin:6px 0}.drop-enter-active[data-v-78e7cd6b],.drop-leave-active[data-v-78e7cd6b]{transition:opacity .18s ease,transform .18s ease}.drop-enter-from[data-v-78e7cd6b],.drop-leave-to[data-v-78e7cd6b]{opacity:0;transform:translateY(-8px)}}.footer[data-v-c94e7912]{margin-top:56px;padding:26px 0;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;color:var(--c-text-light);font-size:13px;line-height:1.7;background:var(--c-card);box-shadow:0 -1px 0 var(--c-line);transition:background-color .35s ease}.footer a[data-v-c94e7912]{color:var(--c-primary)}.footer a[data-v-c94e7912]:hover{text-decoration:underline}.toast-host[data-v-0b19a2d3]{position:fixed;top:76px;left:50%;transform:translate(-50%);z-index:200;display:flex;flex-direction:column;gap:8px}.toast[data-v-0b19a2d3]{padding:10px 22px;border-radius:8px;color:#fff;font-size:14px;box-shadow:0 4px 12px #00000026;animation:fade-0b19a2d3 .2s ease}.toast.success[data-v-0b19a2d3]{background:#2ecc71}.toast.warn[data-v-0b19a2d3]{background:#f39c12}.toast.error[data-v-0b19a2d3]{background:#e74c3c}@keyframes fade-0b19a2d3{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.back-top[data-v-6baad6cd]{position:fixed;right:26px;bottom:40px;width:44px;height:44px;border-radius:50%;background:var(--c-primary);color:#fff;font-size:18px;border:none;box-shadow:var(--shadow-md);z-index:90}.back-top[data-v-6baad6cd]:hover{transform:translateY(-3px)}.fade-enter-active[data-v-6baad6cd],.fade-leave-active[data-v-6baad6cd]{transition:opacity .25s}.fade-enter-from[data-v-6baad6cd],.fade-leave-to[data-v-6baad6cd]{opacity:0}.page-main[data-v-c6b8a675]{min-height:calc(100vh - 160px);padding-top:70px}.page-enter-active{transition:opacity .22s ease,transform .22s ease}.page-leave-active{transition:opacity .16s ease}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}:root{--c-primary: #2e9e5b;--c-primary-deep: #248a4d;--c-primary-soft: #e7f5ec;--c-ink: #1f2d24;--c-text: #3d4a42;--c-text-light: #8fa096;--c-bg: #ffffff;--c-card: #ffffff;--c-accent: #a5d6a7;--c-line: #e3ece6;--input-bg: #ffffff;--nav-bg: rgba(255,255,255,.88);--blob-a: #c8e6c9;--blob-b: #dcedc8;--hero-grad-top: #f1f9f3;--wall-grad: linear-gradient(135deg,#eef7f0 0%, #f4faf2 55%, #eef5f0 100%);--bubble-other: #f0f4f1;--bubble-me: #d7f0de;--shadow-sm: 0 2px 8px rgba(31,45,36,.06);--shadow-md: 0 6px 18px rgba(31,45,36,.09);--shadow-lg: 0 12px 32px rgba(31,45,36,.12);--radius: 14px;--radius-sm: 9px}:root[data-theme=dark]{--c-primary: #4caf7d;--c-primary-deep: #3d9c6b;--c-primary-soft: rgba(76,175,125,.16);--c-ink: #dcefe3;--c-text: #b3c5ba;--c-text-light: #7a8f81;--c-bg: #101613;--c-card: #17201b;--c-accent: #81c784;--c-line: #24312a;--input-bg: #1b2520;--nav-bg: rgba(16,22,19,.88);--blob-a: rgba(76,175,125,.14);--blob-b: rgba(129,199,132,.1);--hero-grad-top: #14201a;--wall-grad: linear-gradient(135deg,#14211b 0%, #17231d 55%, #13201a 100%);--bubble-other: #22302a;--bubble-me: #1e3d2b;--shadow-sm: 0 2px 8px rgba(0,0,0,.4);--shadow-md: 0 6px 18px rgba(0,0,0,.5);--shadow-lg: 0 12px 32px rgba(0,0,0,.6)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;transition:background-color .35s ease,color .35s ease}h1,h2,h3,h4{color:var(--c-ink);transition:color .35s ease}a{text-decoration:none;color:inherit;transition:color .18s}button{cursor:pointer;border:none;border-radius:var(--radius-sm);padding:9px 20px;background:var(--c-primary);color:#fff;font-size:14px;transition:transform .15s,box-shadow .15s,background .15s,opacity .15s}button:hover{background:var(--c-primary-deep);transform:translateY(-1px);box-shadow:0 6px 14px #2e9e5b4d}button:active{transform:translateY(0)}button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}button.ghost{background:var(--c-card);color:var(--c-primary);border:1px solid var(--c-primary)}button.ghost:hover{background:var(--c-primary-soft)}input,textarea,select{border:1.5px solid var(--c-line);border-radius:var(--radius-sm);padding:9px 12px;font-size:14px;outline:none;background:var(--input-bg);color:var(--c-text);transition:border-color .18s,box-shadow .18s,background-color .35s}input:focus,textarea:focus,select:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px #2e9e5b24}input::placeholder,textarea::placeholder{color:var(--c-text-light);opacity:.75}.container-card{background:var(--c-card);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--c-line);transition:background-color .35s ease,border-color .35s ease}.page-width{max-width:1080px;margin:0 auto;padding:0 20px}.form-row{margin-bottom:16px;display:flex;flex-direction:column;gap:7px}.form-row label{font-size:13px;color:var(--c-text-light);font-weight:500}.hint-error{color:#e05d5d;font-size:13px}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#e3d9cc;border-radius:5px}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#334052}::-webkit-scrollbar-thumb:hover{background:#d4c7b6}::-webkit-scrollbar-track{background:transparent}@media (max-width: 768px){.page-width{padding:0 14px}.form-card{width:100%!important;margin:0 14px;padding:26px 22px!important}.form-page{padding-top:20px!important}.article{padding:24px 18px!important;margin-top:18px!important}.article h1{font-size:22px!important}}@media (max-width: 480px){.page-width{padding:0 12px}}
