.user-center-overlay[data-v-ed8f647c]{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.user-center[data-v-ed8f647c]{background:var(--bg-primary,#fff);border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.user-center__header[data-v-ed8f647c]{border-bottom:1px solid var(--border,#e0e0e0);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.user-center__title[data-v-ed8f647c]{color:var(--text-primary,#333);align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.user-center__btn--close[data-v-ed8f647c]{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;padding:4px;transition:background .2s}.user-center__btn--close[data-v-ed8f647c]:hover{background:var(--bg-hover,#f0f0f0)}.user-center__content[data-v-ed8f647c]{padding:20px}.user-center__section[data-v-ed8f647c]{margin-bottom:24px}.user-center__section-title[data-v-ed8f647c]{color:var(--text-primary,#333);align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:600;display:flex}.user-center__avatar-area[data-v-ed8f647c]{align-items:center;gap:16px;display:flex}.user-center__avatar-preview[data-v-ed8f647c]{background:var(--bg-secondary,#f5f5f5);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.user-center__avatar-preview[data-v-ed8f647c]:hover{opacity:.85}.user-center__avatar-preview img[data-v-ed8f647c]{object-fit:cover;width:100%;height:100%}.user-center__avatar-actions[data-v-ed8f647c]{flex-direction:column;gap:4px;display:flex}.user-center__upload-btn[data-v-ed8f647c]{background:var(--accent,#07c160);color:#fff;cursor:pointer;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:8px 16px;font-size:14px;transition:opacity .2s;display:inline-flex}.user-center__upload-btn[data-v-ed8f647c]:hover{opacity:.9}.user-center__avatar-hint[data-v-ed8f647c]{color:var(--text-secondary,#999);margin:0;font-size:12px}.crop-overlay[data-v-ed8f647c]{z-index:1100;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.crop-dialog[data-v-ed8f647c]{background:var(--bg-primary,#fff);border-radius:12px;width:100%;max-width:600px;overflow:hidden;box-shadow:0 20px 60px #0000004d}.crop-dialog__header[data-v-ed8f647c]{border-bottom:1px solid var(--border,#e0e0e0);color:var(--text-primary,#333);justify-content:space-between;align-items:center;padding:14px 20px;font-size:16px;font-weight:600;display:flex}.crop-dialog__close[data-v-ed8f647c]{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;padding:4px}.crop-dialog__close[data-v-ed8f647c]:hover{background:var(--bg-hover,#f0f0f0)}.crop-dialog__body[data-v-ed8f647c]{align-items:flex-start;gap:20px;padding:20px;display:flex}.crop-container[data-v-ed8f647c]{-webkit-user-select:none;user-select:none;background:#1a1a2e;border-radius:8px;flex:1;height:350px;min-height:350px;position:relative;overflow:hidden}.crop-mask[data-v-ed8f647c]{z-index:5;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.crop-circle[data-v-ed8f647c]{border-radius:50%;width:200px;height:200px;box-shadow:0 0 0 9999px #0000008c}.crop-controls[data-v-ed8f647c]{flex-direction:column;flex-shrink:0;align-items:center;gap:12px;display:flex}.crop-zoom[data-v-ed8f647c]{align-items:center;gap:6px;display:flex}.crop-zoom__btn[data-v-ed8f647c]{background:var(--bg-secondary,#f5f5f5);border:1px solid var(--border,#ddd);cursor:pointer;width:32px;height:32px;color:var(--text-primary,#333);border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.crop-zoom__btn[data-v-ed8f647c]:hover:not(:disabled){background:var(--bg-hover,#e8e8e8)}.crop-zoom__btn[data-v-ed8f647c]:disabled{opacity:.4;cursor:not-allowed}.crop-zoom__slider[data-v-ed8f647c]{width:100px;height:4px;accent-color:var(--accent,#07c160)}.crop-container img[data-v-ed8f647c]{max-width:none;max-height:none;position:absolute}.crop-box[data-v-ed8f647c]{cursor:move;z-index:10;pointer-events:auto;border:2px solid #fff;position:absolute}.crop-box[data-v-ed8f647c]:before{content:"";z-index:-1;pointer-events:none;background:#0000008c;border-radius:9999px;position:absolute;inset:-9999px;-webkit-mask:radial-gradient(100px,#0000 100px,#000 101px);mask:radial-gradient(100px,#0000 100px,#000 101px)}.crop-handle[data-v-ed8f647c]{border:2px solid var(--accent,#07c160);z-index:11;background:#fff;border-radius:50%;width:12px;height:12px;position:absolute}.crop-handle--tl[data-v-ed8f647c]{cursor:nwse-resize;top:-6px;left:-6px}.crop-handle--tr[data-v-ed8f647c]{cursor:nesw-resize;top:-6px;right:-6px}.crop-handle--bl[data-v-ed8f647c]{cursor:nesw-resize;bottom:-6px;left:-6px}.crop-handle--br[data-v-ed8f647c]{cursor:nwse-resize;bottom:-6px;right:-6px}.crop-preview[data-v-ed8f647c]{flex-direction:column;flex-shrink:0;align-items:center;gap:8px;width:120px;display:flex}.crop-preview__circle[data-v-ed8f647c]{border:3px solid var(--border,#ddd);background:#f5f5f5;border-radius:50%;width:100px;height:100px;position:relative;overflow:hidden}.crop-preview__circle img[data-v-ed8f647c]{position:absolute;top:0;left:0}.crop-preview__label[data-v-ed8f647c]{color:var(--text-secondary,#999);margin:0;font-size:12px}.crop-dialog__footer[data-v-ed8f647c]{border-top:1px solid var(--border,#e0e0e0);justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.crop-btn[data-v-ed8f647c]{cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-size:14px;font-weight:500;transition:opacity .2s}.crop-btn--cancel[data-v-ed8f647c]{background:var(--bg-secondary,#f5f5f5);color:var(--text-primary,#333)}.crop-btn--cancel[data-v-ed8f647c]:hover{opacity:.85}.crop-btn--confirm[data-v-ed8f647c]{background:var(--accent,#07c160);color:#fff}.crop-btn--confirm[data-v-ed8f647c]:hover{opacity:.9}.crop-btn--confirm[data-v-ed8f647c]:disabled{opacity:.6;cursor:not-allowed}@media (width<=600px){.crop-dialog__body[data-v-ed8f647c]{flex-direction:column;align-items:center}.crop-container[data-v-ed8f647c]{width:100%;min-height:250px}.crop-controls[data-v-ed8f647c],.crop-preview[data-v-ed8f647c]{flex-direction:row;gap:12px}}.user-center__field[data-v-ed8f647c]{gap:8px;margin-bottom:8px;display:flex}.user-center__field input[data-v-ed8f647c]{border:1px solid var(--border,#ddd);background:var(--bg-secondary,#f5f5f5);color:var(--text-primary,#333);border-radius:8px;flex:1;padding:10px 12px;font-size:14px}.user-center__field input[data-v-ed8f647c]:focus{border-color:var(--accent,#07c160);outline:none}.user-center__save-btn[data-v-ed8f647c],.user-center__code-btn[data-v-ed8f647c]{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:10px 16px;font-size:14px;transition:opacity .2s}.user-center__save-btn[data-v-ed8f647c]:disabled,.user-center__code-btn[data-v-ed8f647c]:disabled{opacity:.6;cursor:not-allowed}.user-center__save-btn[data-v-ed8f647c]{background:var(--accent,#07c160);color:#fff}.user-center__code-btn[data-v-ed8f647c]{background:var(--accent-blue,#1890ff);color:#fff}.user-center__message[data-v-ed8f647c]{border-radius:8px;margin-top:16px;padding:12px;font-size:14px}.user-center__message--success[data-v-ed8f647c]{color:#1890ff;background:#f0f9ff;border:1px solid #91d5ff}.user-center__message--error[data-v-ed8f647c]{color:#ff4d4f;background:#fff2f0;border:1px solid #ffccc7}@media (width<=600px){.user-center[data-v-ed8f647c]{max-width:100%;margin:10px}.user-center__field[data-v-ed8f647c]{flex-direction:column}.user-center__save-btn[data-v-ed8f647c],.user-center__code-btn[data-v-ed8f647c]{width:100%}}.nav-wrapper[data-v-c8f668fe]{z-index:100;background:var(--nav-bg);border-bottom:1px solid var(--bd);position:sticky;top:0}.nav[data-v-c8f668fe]{padding:0 20px}.nav__inner[data-v-c8f668fe]{justify-content:space-between;align-items:center;max-width:1200px;height:44px;margin:0 auto;display:flex}.nav__brand[data-v-c8f668fe]{color:var(--text-primary,#333);align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.nav__controls[data-v-c8f668fe]{flex:1;justify-content:flex-end;align-items:center;gap:0;display:flex}.nav__links[data-v-c8f668fe],.nav__side[data-v-c8f668fe]{align-items:center;gap:0;display:flex}.nav__btn[data-v-c8f668fe]{cursor:pointer;color:var(--text-secondary,#666);white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;padding:6px 8px;font-size:14px;transition:all .2s;display:inline-flex}.nav__btn svg[data-v-c8f668fe]{align-self:center;display:block}.nav__btn[data-v-c8f668fe]:hover{background:var(--bg-hover,#f0f0f0);color:var(--text-primary,#333)}.nav__btn--blog.active[data-v-c8f668fe]{color:var(--accent,#07c160)}.nav__btn--login[data-v-c8f668fe]{background:var(--accent,#07c160);color:#fff}.nav__btn--login[data-v-c8f668fe]:hover{background:var(--accent-dark,#06ad56);color:#fff}.nav__user-dropdown[data-v-c8f668fe]{position:relative}.nav__user-badge[data-v-c8f668fe]{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:6px 8px;font-size:14px;transition:all .2s;display:inline-flex}.nav__user-badge[data-v-c8f668fe]:hover{background:var(--bg-hover,#f0f0f0);color:var(--text-primary,#333)}.nav__user-avatar-img[data-v-c8f668fe]{object-fit:cover;border-radius:50%;width:24px;height:24px}.nav__user-menu[data-v-c8f668fe]{background:var(--nav-bg);border:1px solid var(--bd);z-index:1000;border-radius:8px;min-width:160px;margin-top:4px;padding:4px;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000001a}.nav__user-menu-item[data-v-c8f668fe]{cursor:pointer;width:100%;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;transition:all .2s;display:flex}.nav__user-menu-item[data-v-c8f668fe]:hover{background:var(--bg-hover,#f0f0f0);color:var(--text-primary,#333)}.nav__user-menu-item--logout[data-v-c8f668fe]{color:var(--error,#ff4d4f)}.nav__user-menu-item--logout[data-v-c8f668fe]:hover{background:var(--error-light,#ff4d4f1a);color:var(--error,#ff4d4f)}.nav__user-menu-divider[data-v-c8f668fe]{background:var(--bd);height:1px;margin:4px 0}.auth-overlay[data-v-c8f668fe]{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.auth-dialog[data-v-c8f668fe]{background:var(--nav-bg);border-radius:12px;width:100%;max-width:400px;padding:24px;box-shadow:0 20px 60px #0000004d}.auth-dialog__header[data-v-c8f668fe]{color:var(--text-primary,#333);align-items:center;gap:8px;margin-bottom:20px;font-size:18px;font-weight:600;display:flex}.auth-dialog__close[data-v-c8f668fe]{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;margin-left:auto;padding:4px}.auth-dialog__close[data-v-c8f668fe]:hover{background:var(--bg-hover,#f0f0f0)}.auth-dialog__form[data-v-c8f668fe]{flex-direction:column;gap:16px;display:flex}.auth-dialog__field[data-v-c8f668fe]{background:var(--bg-secondary,#f5f5f5);border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.auth-dialog__field input[data-v-c8f668fe]{color:var(--text-primary,#333);background:0 0;border:none;outline:none;flex:1;font-size:14px}.auth-dialog__field input[data-v-c8f668fe]::placeholder{color:var(--text-secondary,#999)}.auth-dialog__error[data-v-c8f668fe]{color:var(--error,#ff4d4f);background:var(--error-light,#ff4d4f1a);border-radius:8px;padding:8px;font-size:13px}.auth-dialog__btn[data-v-c8f668fe]{background:var(--accent,#07c160);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px;font-size:14px;font-weight:600;transition:opacity .2s}.auth-dialog__btn[data-v-c8f668fe]:hover:not(:disabled){opacity:.9}.auth-dialog__btn[data-v-c8f668fe]:disabled{opacity:.5;cursor:not-allowed}.auth-dialog__switch[data-v-c8f668fe]{text-align:center;color:var(--text-secondary,#666);margin:0;font-size:13px}.auth-dialog__switch a[data-v-c8f668fe]{color:var(--accent,#07c160);font-weight:600;text-decoration:none}.auth-dialog__switch a[data-v-c8f668fe]:hover{text-decoration:underline}.auth-dialog__links[data-v-c8f668fe]{flex-direction:column;align-items:center;gap:2px;display:flex}.auth-dialog__forgot[data-v-c8f668fe]{color:var(--text-secondary,#999);font-size:12px;text-decoration:none;transition:color .2s}.auth-dialog__forgot[data-v-c8f668fe]:hover{color:var(--accent,#07c160);text-decoration:underline}.auth-dialog__info[data-v-c8f668fe]{color:var(--text-secondary,#666);text-align:center;background:var(--bg-secondary,#f5f5f5);border-radius:8px;padding:8px;font-size:13px}.auth-dialog__success[data-v-c8f668fe]{color:var(--accent,#07c160);flex-direction:column;align-items:center;gap:12px;padding:24px 0;font-size:16px;font-weight:600;display:flex}.announcement-modal-overlay[data-v-c8f668fe]{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.announcement-modal[data-v-c8f668fe]{background:var(--nav-bg);border-radius:12px;width:100%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.announcement-modal__header[data-v-c8f668fe]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.announcement-modal__title[data-v-c8f668fe]{color:var(--text-primary,#333);align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.announcement-modal__close[data-v-c8f668fe]{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;padding:4px}.announcement-modal__close[data-v-c8f668fe]:hover{background:var(--bg-hover,#f0f0f0)}.announcement-modal__body[data-v-c8f668fe]{padding:20px}.announcement-modal__loading[data-v-c8f668fe]{color:var(--text-secondary,#666);justify-content:center;align-items:center;gap:8px;padding:40px;display:flex}.announcement-modal__content[data-v-c8f668fe]{flex-direction:column;gap:12px;display:flex}.announcement-modal__text[data-v-c8f668fe]{color:var(--text-primary,#333);font-size:14px;line-height:1.6}.announcement-modal__time[data-v-c8f668fe]{color:var(--text-secondary,#999);font-size:12px}.announcement-modal__empty[data-v-c8f668fe]{color:var(--text-secondary,#999);flex-direction:column;align-items:center;gap:8px;padding:40px;display:flex}.nav__hamburger[data-v-c8f668fe],.nav__mobile-overlay[data-v-c8f668fe],.nav__mobile-drawer[data-v-c8f668fe]{display:none}@media (width<=640px){.nav__links[data-v-c8f668fe],.nav__side .nav__btn--theme[data-v-c8f668fe],.nav__side .nav__btn--lang[data-v-c8f668fe]{display:none!important}.nav__hamburger[data-v-c8f668fe]{cursor:pointer;color:var(--text-secondary,#666);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.nav__hamburger[data-v-c8f668fe]:hover{color:var(--text-primary,#333);background:var(--bg-hover,#f0f0f0)}.nav__mobile-overlay[data-v-c8f668fe]{z-index:99;background:#0006;display:block;position:fixed;inset:0}.nav__mobile-drawer[data-v-c8f668fe]{background:var(--nav-bg);border-left:1px solid var(--bd);z-index:100;flex-direction:column;gap:2px;width:240px;height:100vh;padding:12px;display:flex;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-4px 0 12px #00000026}.nav__mobile-item[data-v-c8f668fe]{cursor:pointer;width:100%;color:var(--text-primary,#333);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:12px;font-size:15px;transition:background .15s;display:flex}.nav__mobile-item[data-v-c8f668fe]:hover{background:var(--bg-hover,#f0f0f0)}.nav__mobile-item--logout[data-v-c8f668fe]{color:var(--error,#ff4d4f)}.nav__mobile-divider[data-v-c8f668fe]{background:var(--bd);height:1px;margin:8px 0}.nav__user-badge[data-v-c8f668fe]{padding:6px}}.sys-bar[data-v-87bfab96]{background:var(--card);border:1px solid var(--bd);color:var(--td);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem;margin-bottom:1.2rem;padding:.5rem 1rem;font-size:.78rem;display:flex}.sys-bar__item[data-v-87bfab96]{white-space:nowrap;align-items:center;gap:.3rem;display:flex}.sys-bar__clock[data-v-87bfab96]{color:var(--ac);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.85rem;font-weight:700}@media (width<=640px){.sys-bar[data-v-87bfab96]{flex-wrap:wrap;gap:.6rem;font-size:.75rem}.sys-bar__clock[data-v-87bfab96]{text-align:center;width:100%;margin-left:0}}.weather-card[data-v-57acb64c]{background:var(--card);border:1.5px solid var(--bd);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;min-width:0;margin-bottom:0;padding:1.2rem 1.2rem 1rem;transition:transform .3s;overflow:hidden}.weather-card[data-v-57acb64c]:hover{transform:translateY(-2px)}.weather-card__header[data-v-57acb64c]{border-bottom:1px solid var(--bd);align-items:center;gap:.5rem;margin-bottom:.6rem;padding-bottom:.6rem;display:flex}.weather-today__advice[data-v-57acb64c]{color:var(--ac);align-items:center;gap:.3rem;margin-top:.15rem;font-size:.75rem;font-weight:700;line-height:1.4;display:flex}.weather-card__title[data-v-57acb64c]{color:var(--td);align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:flex}.weather-card__quality[data-v-57acb64c]{color:#fff;border-radius:10px;margin-left:auto;padding:2px 7px;font-size:.65rem;font-weight:600}.aq-good[data-v-57acb64c]{background:#22c55e}.aq-moderate[data-v-57acb64c]{background:#eab308}.aq-bad[data-v-57acb64c]{background:#ef4444}.weather-today[data-v-57acb64c]{border-bottom:1px solid var(--bd);grid-template-columns:auto 1fr;align-items:center;gap:1rem;margin-bottom:.6rem;padding:.5rem 0 .8rem;display:grid}.weather-today__icon-wrap[data-v-57acb64c]{width:70px;height:70px;color:var(--ac);justify-content:center;align-items:center;display:flex}.weather-today__icon[data-v-57acb64c]{font-size:3rem;line-height:1}.weather-today__info[data-v-57acb64c]{grid-template-columns:1fr 1fr;align-items:center;gap:.8rem;display:grid}.weather-today__main[data-v-57acb64c]{flex-direction:column;justify-content:center;display:flex}.weather-today__temp[data-v-57acb64c]{color:var(--t);font-size:1.8rem;font-weight:800;line-height:1}.weather-today__type[data-v-57acb64c]{color:var(--ac);margin-top:.2rem;font-size:1rem;font-weight:600}.weather-today__extra[data-v-57acb64c]{border-left:1px solid var(--bd);flex-direction:column;justify-content:center;gap:.15rem;padding-left:.8rem;display:flex}.weather-today__detail[data-v-57acb64c]{color:var(--td);font-size:.75rem;line-height:1.5}.spin[data-v-57acb64c]{animation:1s linear infinite spin-57acb64c}@keyframes spin-57acb64c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.weather-forecast[data-v-57acb64c]{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--bd) transparent;gap:.75rem;padding:.5rem 0 .8rem;display:flex;overflow:auto hidden}.weather-forecast[data-v-57acb64c]::-webkit-scrollbar{height:3px}.weather-forecast[data-v-57acb64c]::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}.weather-fc-col[data-v-57acb64c]{border:1px solid var(--bd);background:#ffffff05;border-radius:12px;flex-direction:column;flex:none;align-items:center;gap:.2rem;width:70px;padding:.5rem .4rem;transition:all .2s;display:flex}.weather-fc-col[data-v-57acb64c]:hover{background:#ffffff0d;transform:translateY(-2px)}.weather-fc-col.today[data-v-57acb64c]{border-color:var(--ac);background:#f973160f}.weather-fc-col__day[data-v-57acb64c]{color:var(--t);font-size:.75rem;font-weight:600}.weather-fc-col__date[data-v-57acb64c]{color:var(--td);font-size:.6rem}.weather-fc-col__icon[data-v-57acb64c]{color:var(--ac);justify-content:center;align-items:center;display:flex}.weather-fc-col__type[data-v-57acb64c]{color:var(--t);white-space:nowrap;text-overflow:ellipsis;text-align:center;width:100%;font-size:.7rem;font-weight:600;overflow:hidden}.weather-fc-col__temp[data-v-57acb64c]{color:var(--t);text-align:center;font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.weather-fc-col__temp span[data-v-57acb64c]{color:var(--td);font-size:.7rem;font-weight:400;display:block}.weather-fc-col__bar[data-v-57acb64c]{background:var(--bd);border-radius:3px;width:100%;height:6px;position:relative;overflow:hidden}.weather-fc-col__bar-fill[data-v-57acb64c]{border-radius:3px;height:100%;transition:all .6s;position:absolute;top:0}.cold[data-v-57acb64c]{background:linear-gradient(90deg,#60a5fa,#3b82f6)}.warm[data-v-57acb64c]{background:linear-gradient(90deg,#fbbf24,#f97316)}.hot[data-v-57acb64c]{background:linear-gradient(90deg,#f97316,#ef4444)}@media (width<=640px){.weather-card[data-v-57acb64c]{height:auto;min-height:200px}.weather-fc-col[data-v-57acb64c]{width:75px}}.calendar-card[data-v-91b288c8]{background:var(--card);border:1.5px solid var(--bd);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;margin-bottom:1.2rem;padding:1.2rem;transition:transform .3s}.calendar-card[data-v-91b288c8]:hover{transform:translateY(-2px)}.calendar-card__header[data-v-91b288c8]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:.8rem;display:flex}.calendar-card__title[data-v-91b288c8]{color:var(--td);align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:flex}.calendar-card__nav[data-v-91b288c8]{align-items:center;gap:.5rem;display:flex}.calendar-card__btn[data-v-91b288c8]{background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:24px;height:24px;font-size:1rem;transition:background .2s;display:flex}.calendar-card__btn[data-v-91b288c8]:hover{background:#fff3}.calendar-card__month[data-v-91b288c8]{color:var(--t);text-align:center;min-width:100px;font-size:.8rem;font-weight:600}.calendar-card__weekdays[data-v-91b288c8]{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.5rem;display:grid}.calendar-card__weekday[data-v-91b288c8]{color:var(--td);text-align:center;padding:.2rem;font-size:.7rem;font-weight:600}.calendar-card__days[data-v-91b288c8]{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-card__day[data-v-91b288c8]{border-radius:8px;justify-content:center;align-items:center;height:28px;transition:background .2s;display:flex}.calendar-card__day[data-v-91b288c8]:hover{background:#ffffff0d}.calendar-card__day--today[data-v-91b288c8]{background:var(--ac);color:#fff;font-weight:700}.calendar-card__day--today[data-v-91b288c8]:hover{background:var(--ac);opacity:.9}.calendar-card__day--other[data-v-91b288c8]{opacity:.3}.calendar-card__day--weekend[data-v-91b288c8]{color:var(--r)}.calendar-card__day--today.calendar-card__day--weekend[data-v-91b288c8]{color:#fff}.calendar-card__day--selected[data-v-91b288c8]{border:1px solid var(--ac);background:#f9731633}.calendar-card__day--selected[data-v-91b288c8]:hover{background:#f973164d}.calendar-card__day--today.calendar-card__day--selected[data-v-91b288c8]{background:var(--ac);border-color:var(--ac)}.calendar-card__day-number[data-v-91b288c8]{-webkit-user-select:none;user-select:none;font-size:.75rem;font-weight:500}.calendar-card__lunar[data-v-91b288c8]{border-top:1px solid var(--bd);flex-direction:column;gap:.4rem;margin-top:.8rem;padding-top:.8rem;display:flex}.calendar-card__lunar-date[data-v-91b288c8]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.calendar-card__lunar-label[data-v-91b288c8]{color:var(--td);background:#ffffff0d;border-radius:4px;padding:2px 6px 2px 1px;font-size:.65rem;font-weight:600}.calendar-card__lunar-label.yi[data-v-91b288c8]{color:#22c55e;background:#22c55e26;padding:2px 6px}.calendar-card__lunar-label.ji[data-v-91b288c8]{color:#ef4444;background:#ef444426;padding:2px 6px}.calendar-card__lunar-value[data-v-91b288c8]{color:var(--t);font-size:.75rem;font-weight:600}.calendar-card__lunar-ganzhi[data-v-91b288c8]{color:var(--td);opacity:.7;font-size:.65rem}.calendar-card__lunar-yi[data-v-91b288c8],.calendar-card__lunar-ji[data-v-91b288c8]{align-items:flex-start;gap:.5rem;display:flex}.calendar-card__lunar-yi .calendar-card__lunar-value[data-v-91b288c8],.calendar-card__lunar-ji .calendar-card__lunar-value[data-v-91b288c8]{color:var(--td);font-size:.65rem;font-weight:400;line-height:1.4}@media (width<=640px){.calendar-card[data-v-91b288c8]{padding:1rem}.calendar-card__day[data-v-91b288c8]{height:24px}.calendar-card__day-number[data-v-91b288c8]{font-size:.65rem}}.cards[data-v-daa7c74d]{margin-bottom:1.2rem}.status-row[data-v-daa7c74d]{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.card[data-v-daa7c74d]{background:var(--card);border:1.5px solid var(--bd);text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:2rem 1.5rem 1.5rem;transition:transform .3s;display:flex}.card[data-v-daa7c74d]:hover{transform:translateY(-2px)}.card__emoji[data-v-daa7c74d]{margin-bottom:.5rem;font-size:5rem;line-height:1;animation:3s ease-in-out infinite bob-daa7c74d}.card__name[data-v-daa7c74d]{color:var(--ac);margin-bottom:.3rem;font-size:2.2rem;font-weight:800}.card__cap[data-v-daa7c74d]{color:var(--td);margin-bottom:1.2rem;font-size:.9rem}.orb[data-v-daa7c74d]{width:80px;height:80px;margin-bottom:1rem;position:relative}.orb__ring[data-v-daa7c74d]{border:1.5px solid var(--g);border-radius:50%;animation:4s linear infinite spin-daa7c74d;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orb__ring--outer[data-v-daa7c74d]{width:80px;height:80px}.orb__ring--mid[data-v-daa7c74d]{width:64px;height:64px;animation-duration:3s;animation-direction:reverse}.orb__ring--inner[data-v-daa7c74d]{width:48px;height:48px;animation-duration:2s}.orb__core[data-v-daa7c74d]{background:var(--g);width:24px;height:24px;box-shadow:0 0 20px var(--gg), 0 0 40px var(--gg);border-radius:50%;transition:all .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orb--idle .orb__ring[data-v-daa7c74d]{border-color:var(--y)}.orb--idle .orb__core[data-v-daa7c74d]{background:var(--y);box-shadow:0 0 20px var(--yg), 0 0 40px var(--yg)}.orb--fault .orb__ring[data-v-daa7c74d]{border-color:var(--r);animation-duration:.5s}.orb--fault .orb__core[data-v-daa7c74d]{background:var(--r);box-shadow:0 0 20px var(--rg), 0 0 40px var(--rg)}.card__status[data-v-daa7c74d]{align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:1.1rem;font-weight:700;display:flex}.card__dot[data-v-daa7c74d]{border-radius:50%;width:10px;height:10px;display:inline-block}.card__dot--green[data-v-daa7c74d]{background:var(--g);box-shadow:0 0 6px var(--gg)}.card__dot--yellow[data-v-daa7c74d]{background:var(--y);box-shadow:0 0 6px var(--yg)}.card__dot--red[data-v-daa7c74d]{background:var(--r);box-shadow:0 0 6px var(--rg)}.card__detail[data-v-daa7c74d]{color:var(--td);margin-bottom:.6rem;font-size:.75rem}.card__info[data-v-daa7c74d]{color:var(--td);opacity:.8;flex-wrap:wrap;justify-content:center;gap:.6rem;font-size:.65rem;display:flex}.card__info-item[data-v-daa7c74d]{align-items:center;gap:.2rem;display:flex}@keyframes bob-daa7c74d{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin-daa7c74d{to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes flash-border-daa7c74d{0%,to{border-color:var(--bd)}50%{border-color:var(--r)}}.alert-flash[data-v-daa7c74d]{animation:.8s ease-in-out 3 flash-border-daa7c74d}@media (width<=640px){.status-row[data-v-daa7c74d]{grid-template-columns:1fr}.card[data-v-daa7c74d]{justify-self:center;width:280px;height:auto}}.rss-card[data-v-a8e188cf]{background:var(--card);border:1.5px solid var(--bd);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;flex-direction:column;padding:1.2rem;transition:transform .3s;display:flex}.rss-card[data-v-a8e188cf]:hover{transform:translateY(-2px)}.rss-card__header[data-v-a8e188cf]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:.8rem;display:flex}.rss-card__title[data-v-a8e188cf]{color:var(--td);align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:inline-flex}.rss-card__count[data-v-a8e188cf]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:2px 8px;font-size:.7rem}.rss-card__feeds[data-v-a8e188cf]{flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem;display:flex}.rss-card__feed-tag[data-v-a8e188cf]{color:var(--td);border:1px solid var(--bd);cursor:pointer;background:#ffffff0d;border-radius:8px;align-items:center;gap:.3rem;padding:3px 8px;font-size:.65rem;transition:all .2s;display:inline-flex}.rss-card__feed-tag[data-v-a8e188cf]:hover{background:#ffffff1a}.rss-card__feed-tag.active[data-v-a8e188cf]{background:var(--ac);color:#fff;border-color:var(--ac)}.rss-card__list[data-v-a8e188cf]{scrollbar-width:thin;scrollbar-color:var(--bd) transparent;flex-direction:column;flex:1;gap:.6rem;min-height:0;padding:0 .5rem 0 0;display:flex;overflow-y:auto}.rss-card__list[data-v-a8e188cf]::-webkit-scrollbar{width:4px}.rss-card__list[data-v-a8e188cf]::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}.rss-card__list[data-v-a8e188cf]::-webkit-scrollbar-track{background:0 0;margin:4px 0}.rss-card__item[data-v-a8e188cf]{border:1px solid var(--bd);color:var(--t);background:#ffffff05;border-radius:10px;flex-direction:column;gap:.3rem;padding:.8rem;text-decoration:none;transition:all .2s;display:flex}.rss-card__item[data-v-a8e188cf]:hover{background:#ffffff0d;transform:translate(2px)}.rss-card__item-source[data-v-a8e188cf]{align-items:center;gap:.4rem;display:flex}.rss-card__item-icon[data-v-a8e188cf]{align-items:center;font-size:.8rem;display:inline-flex}.rss-card__item-name[data-v-a8e188cf]{color:var(--td);font-size:.65rem;font-weight:600}.rss-card__item-title[data-v-a8e188cf]{color:var(--t);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.rss-card__item-desc[data-v-a8e188cf]{color:var(--td);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.7rem;line-height:1.4;display:-webkit-box;overflow:hidden}.rss-card__footer[data-v-a8e188cf]{color:var(--td);opacity:.4;text-align:center;margin-top:.8rem;font-size:.6rem}@media (width<=640px){.rss-card__list[data-v-a8e188cf]{max-height:300px}.rss-card__item[data-v-a8e188cf]{padding:.6rem}.rss-card__title[data-v-a8e188cf]{font-size:.85rem}}.skills-card[data-v-a39fce99]{background:var(--card);border:1.5px solid var(--bd);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;padding:1.2rem;transition:transform .3s}.skills-card[data-v-a39fce99]:hover{transform:translateY(-2px)}.skills-card__header[data-v-a39fce99]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:.8rem;display:flex}.skills-card__title[data-v-a39fce99]{color:var(--td);align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:inline-flex}.skills-card__count[data-v-a39fce99]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:2px 8px;font-size:.7rem}.skills-card__categories[data-v-a39fce99]{flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem;display:flex}.skills-card__cat-btn[data-v-a39fce99]{color:var(--td);border:1px solid var(--bd);cursor:pointer;background:#ffffff0d;border-radius:8px;padding:4px 10px;font-size:.65rem;transition:all .2s}.skills-card__cat-btn[data-v-a39fce99]:hover{background:#ffffff1a}.skills-card__cat-btn.active[data-v-a39fce99]{background:var(--ac);color:#fff;border-color:var(--ac)}.skills-card__list[data-v-a39fce99]{scrollbar-width:thin;scrollbar-color:var(--bd) transparent;flex-direction:column;gap:.6rem;max-height:400px;padding:0 .5rem 0 0;display:flex;overflow-y:auto}.skills-card__list[data-v-a39fce99]::-webkit-scrollbar{width:4px}.skills-card__list[data-v-a39fce99]::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}.skills-card__list[data-v-a39fce99]::-webkit-scrollbar-track{background:0 0;margin:4px 0}.skills-card__item[data-v-a39fce99]{border:1px solid var(--bd);background:#ffffff05;border-radius:10px;flex-direction:column;gap:.3rem;padding:.8rem;transition:all .2s;display:flex}.skills-card__item[data-v-a39fce99]:hover{background:#ffffff0d}.skills-card__item-header[data-v-a39fce99]{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.skills-card__item-name[data-v-a39fce99]{color:var(--t);font-size:.8rem;font-weight:600}.skills-card__item-cat[data-v-a39fce99]{color:var(--td);white-space:nowrap;background:#ffffff0d;border-radius:8px;padding:2px 6px;font-size:.6rem}.skills-card__item-desc[data-v-a39fce99]{color:var(--td);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.7rem;line-height:1.4;display:-webkit-box;overflow:hidden}@media (width<=640px){.skills-card__list[data-v-a39fce99]{max-height:300px}.skills-card__item[data-v-a39fce99]{padding:.6rem}.skills-card__item-name[data-v-a39fce99]{font-size:.75rem}.skills-card__item-desc[data-v-a39fce99]{font-size:.65rem}}.guestbook-card[data-v-e69a53cc]{background:var(--card);border:1.5px solid var(--bd);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box;border-radius:14px;flex-direction:column;min-width:0;max-width:100%;min-height:0;padding:1.2rem;transition:transform .3s;display:flex;overflow:hidden}.guestbook-card[data-v-e69a53cc]:hover{z-index:1;transform:translateY(-2px)}.guestbook-card__header[data-v-e69a53cc]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;margin-bottom:.8rem;padding-bottom:.8rem;display:flex}.guestbook-card__title[data-v-e69a53cc]{color:var(--td);align-items:center;gap:.3rem;font-size:.85rem;font-weight:700;display:inline-flex}.guestbook-card__count[data-v-e69a53cc]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:2px 8px;font-size:.7rem}.guestbook-card__stats[data-v-e69a53cc]{border:1px solid var(--bd);background:#ffffff05;border-radius:10px;justify-content:space-around;margin-bottom:1rem;padding:.8rem;display:flex}.guestbook-card__stat[data-v-e69a53cc]{flex-direction:column;align-items:center;gap:.2rem;display:flex}.guestbook-card__stat-value[data-v-e69a53cc]{color:var(--ac);font-size:1.2rem;font-weight:700}.guestbook-card__stat-label[data-v-e69a53cc]{color:var(--td);font-size:.6rem}.guestbook-card__form[data-v-e69a53cc]{border:1px solid var(--bd);background:#ffffff05;border-radius:10px;flex-direction:column;gap:.6rem;margin-bottom:1rem;padding:.8rem;display:flex}.guestbook-card__login-hint[data-v-e69a53cc]{border:1px solid var(--bd);color:var(--td);background:#ffffff05;border-radius:10px;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem;padding:1rem;font-size:.8rem;display:flex}.guestbook-card__form[data-v-e69a53cc]{flex-direction:column;gap:.6rem;display:flex}.guestbook-card__form-row[data-v-e69a53cc]{align-items:center;gap:.5rem;display:flex}.guestbook-card__user-info[data-v-e69a53cc]{color:var(--ac);align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;display:inline-flex}.user-avatar[data-v-e69a53cc]{object-fit:cover;border-radius:50%;flex-shrink:0;width:20px;height:20px;display:block}.guestbook-card__logout-btn[data-v-e69a53cc]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;margin-left:auto;padding:4px;transition:all .2s;display:flex}.guestbook-card__logout-btn[data-v-e69a53cc]:hover{background:var(--ctrl-bg);color:var(--r)}.guestbook-card__form-input[data-v-e69a53cc]{border:1px solid var(--bd);width:100%;color:var(--t);background:#ffffff08;border-radius:8px;outline:none;padding:.5rem .8rem;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.guestbook-card__form-input[data-v-e69a53cc]:focus{border-color:var(--ac);box-shadow:0 0 0 2px #7c3aed1a}.guestbook-card__select[data-v-e69a53cc]{padding:.4rem}.guestbook-card__input[data-v-e69a53cc]{border:1px solid var(--bd);color:var(--t);background:#ffffff0d;border-radius:8px;outline:none;flex:1;padding:.5rem .8rem;font-size:.75rem;transition:border-color .2s}.guestbook-card__input[data-v-e69a53cc]:focus{border-color:var(--ac)}.guestbook-card__select[data-v-e69a53cc]{border:1px solid var(--bd);color:var(--t);cursor:pointer;background:#ffffff0d;border-radius:8px;flex-shrink:0;max-width:120px;padding:.5rem;font-size:.8rem}.guestbook-card__textarea[data-v-e69a53cc]{border:1px solid var(--bd);width:100%;color:var(--t);resize:vertical;background:#ffffff0d;border-radius:8px;outline:none;padding:.5rem .8rem;font-size:.75rem;transition:border-color .2s}.guestbook-card__textarea[data-v-e69a53cc]:focus{border-color:var(--ac)}.guestbook-card__submit[data-v-e69a53cc]{background:var(--ac);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.5rem 1.5rem;font-size:.75rem;font-weight:600;transition:opacity .2s}.guestbook-card__submit[data-v-e69a53cc]:hover:not(:disabled){opacity:.9}.guestbook-card__submit[data-v-e69a53cc]:disabled{opacity:.5;cursor:not-allowed}.guestbook-card__char-count[data-v-e69a53cc]{color:var(--td);margin-left:auto;font-size:.6rem}.guestbook-card__list[data-v-e69a53cc]{scrollbar-width:thin;scrollbar-color:var(--bd) transparent;flex-direction:column;flex:auto;gap:.6rem;width:100%;min-width:0;min-height:0;padding:0 .5rem 0 0;display:flex;overflow-y:auto}.guestbook-card__list[data-v-e69a53cc]::-webkit-scrollbar{width:4px}.guestbook-card__list[data-v-e69a53cc]::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}.guestbook-card__list[data-v-e69a53cc]::-webkit-scrollbar-track{background:0 0;margin:4px 0}.guestbook-card__message[data-v-e69a53cc]{border:1px solid var(--bd);background:#ffffff05;border-radius:10px;flex-direction:column;gap:.4rem;min-width:0;max-width:100%;padding:.8rem;transition:all .2s;display:flex}.guestbook-card__message[data-v-e69a53cc]:hover{background:#ffffff0d}.guestbook-card__message-header[data-v-e69a53cc]{align-items:center;gap:.5rem;display:flex}.guestbook-card__message-avatar[data-v-e69a53cc]{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:1.2rem;display:flex}.guestbook-card__message-avatar img[data-v-e69a53cc]{object-fit:cover;border-radius:50%;width:24px;height:24px}.user-avatar[data-v-e69a53cc]{object-fit:cover;vertical-align:middle;border-radius:50%;width:16px;height:16px}.guestbook-card__message-nickname[data-v-e69a53cc]{color:var(--t);font-size:.8rem;font-weight:600}.guestbook-card__message-province[data-v-e69a53cc]{color:var(--ac);background:#f973161a;border-radius:8px;padding:1px 6px;font-size:.65rem}.guestbook-card__message-time[data-v-e69a53cc]{color:var(--td);margin-left:auto;font-size:.6rem}.guestbook-card__message-content[data-v-e69a53cc]{color:var(--t);word-break:break-all;overflow-wrap:break-word;min-width:0;max-width:100%;font-size:.75rem;line-height:1.5;overflow:hidden}.guestbook-card__message-footer[data-v-e69a53cc]{justify-content:flex-end;display:flex}.guestbook-card__message-footer-btns[data-v-e69a53cc]{align-items:center;gap:.3rem;display:flex}.guestbook-card__delete-btn[data-v-e69a53cc]{color:var(--r);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:.2rem .4rem;font-size:.7rem;transition:all .2s;display:inline-flex}.guestbook-card__delete-btn[data-v-e69a53cc]:hover{background:#ef444426}.guestbook-card__like-btn[data-v-e69a53cc]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.2rem;padding:.2rem .5rem;font-size:.7rem;transition:all .2s;display:inline-flex}.guestbook-card__like-btn[data-v-e69a53cc]:hover{color:var(--r);background:#ffffff0d}.guestbook-card__like-btn--active[data-v-e69a53cc]{color:#ef4444;background:#ef444426!important}.guestbook-card__like-btn--active[data-v-e69a53cc]:hover{background:#ef444440!important}@media (width<=640px){.guestbook-card__list[data-v-e69a53cc]{max-height:none}.guestbook-card__stats[data-v-e69a53cc]{flex-direction:row;gap:.5rem}.guestbook-card__form-row[data-v-e69a53cc]{flex-wrap:wrap}.guestbook-card__select[data-v-e69a53cc]{max-width:100px;padding:.4rem;font-size:.75rem}}.footer[data-v-1d674ea0]{z-index:1;border-top:1px solid var(--bd);background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:background .4s;position:relative}.footer__inner[data-v-1d674ea0]{flex-direction:column;align-items:center;gap:.4rem;padding:1rem 0;display:flex}.footer__row[data-v-1d674ea0]{color:var(--td);align-items:center;gap:.6rem;font-size:.8rem;line-height:1;display:flex}.footer__item[data-v-1d674ea0]{align-items:center;gap:.25rem;line-height:1;display:inline-flex}.footer__brand[data-v-1d674ea0]{color:var(--ac);font-weight:700}.footer__sep[data-v-1d674ea0]{opacity:.4}.footer__plus[data-v-1d674ea0]{opacity:.4;font-size:.7rem}.footer__powered[data-v-1d674ea0]{align-items:center;gap:.2rem;display:inline-flex}.footer__powered a[data-v-1d674ea0]{color:var(--td);font-weight:600;text-decoration:none;transition:color .2s}.footer__powered a[data-v-1d674ea0]:hover{color:var(--ac)}.footer__email a[data-v-1d674ea0]{color:var(--td);text-decoration:none;transition:color .2s}.footer__email a[data-v-1d674ea0]:hover{color:var(--ac)}.footer__desc[data-v-1d674ea0]{color:var(--td);opacity:.6;text-align:center;font-size:.7rem}@media (width<=640px){.footer__row[data-v-1d674ea0]{flex-wrap:wrap;justify-content:center}.footer__inner[data-v-1d674ea0]{align-items:center}}.login-overlay[data-v-8ccf19ce]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn-8ccf19ce;display:flex;position:fixed;inset:0}.login-dialog[data-v-8ccf19ce]{background:var(--card);border:1.5px solid var(--bd);border-radius:16px;width:90%;max-width:360px;padding:2rem;animation:.3s slideUp-8ccf19ce;box-shadow:0 20px 60px #00000080}.login-dialog__header[data-v-8ccf19ce]{color:var(--t);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.1rem;font-weight:700;display:flex}.login-dialog__close[data-v-8ccf19ce]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;margin-left:auto;padding:4px;transition:all .2s}.login-dialog__close[data-v-8ccf19ce]:hover{background:var(--ctrl-bg);color:var(--t)}.login-dialog__form[data-v-8ccf19ce]{flex-direction:column;gap:1rem;display:flex}.login-dialog__field[data-v-8ccf19ce]{border:1px solid var(--bd);background:#ffffff0d;border-radius:10px;align-items:center;gap:.6rem;padding:.6rem .8rem;transition:border-color .2s;display:flex}.login-dialog__field[data-v-8ccf19ce]:focus-within{border-color:var(--ac)}.login-dialog__field svg[data-v-8ccf19ce]{color:var(--td);flex-shrink:0}.login-dialog__field input[data-v-8ccf19ce]{color:var(--t);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.login-dialog__field input[data-v-8ccf19ce]::placeholder{color:var(--td)}.login-dialog__error[data-v-8ccf19ce]{color:var(--r);background:var(--rg);text-align:center;border-radius:8px;padding:.4rem .8rem;font-size:.75rem}.login-dialog__submit[data-v-8ccf19ce]{background:var(--ac);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.7rem;font-size:.9rem;font-weight:600;transition:all .2s}.login-dialog__submit[data-v-8ccf19ce]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.login-dialog__submit[data-v-8ccf19ce]:disabled{opacity:.5;cursor:not-allowed}@keyframes fadeIn-8ccf19ce{0%{opacity:0}to{opacity:1}}@keyframes slideUp-8ccf19ce{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin-6bbfdecd{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.user-management[data-v-6bbfdecd]{margin-top:1.5rem;animation:.2s fadeIn}.section-header[data-v-6bbfdecd]{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.header-left[data-v-6bbfdecd]{color:var(--tc);align-items:center;gap:8px;display:flex}.header-left h3[data-v-6bbfdecd]{margin:0;font-size:16px;font-weight:600}.count-badge[data-v-6bbfdecd]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:2px 8px;font-size:12px}.file-mgr__btn[data-v-6bbfdecd]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.file-mgr__btn[data-v-6bbfdecd]:disabled{opacity:.4;cursor:not-allowed}.file-mgr__btn--refresh[data-v-6bbfdecd]{color:var(--ac);border-color:#f973164d}.file-mgr__btn--refresh[data-v-6bbfdecd]:hover{background:#f9731626}.spin[data-v-6bbfdecd]{animation:1s linear infinite spin-6bbfdecd;display:inline-block}.batch-toolbar[data-v-6bbfdecd]{background:var(--ctrl-bg);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:8px;padding:6px 12px;font-size:12px;display:flex}.select-all[data-v-6bbfdecd]{cursor:pointer;color:var(--tc);align-items:center;gap:6px;display:flex}.batch-btns[data-v-6bbfdecd]{gap:8px;display:flex}.batch-btns button[data-v-6bbfdecd]{border:1px solid var(--bd);cursor:pointer;background:var(--ctrl-bg);color:var(--tc);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:4px 12px;font-size:12px;transition:all .2s;display:inline-flex}.batch-btns button[data-v-6bbfdecd]:hover:not(:disabled){border-color:var(--ac);background:#f973161a}.batch-btns button[data-v-6bbfdecd]:disabled{opacity:.4;cursor:not-allowed}.user-toolbar[data-v-6bbfdecd]{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:.5rem;display:flex}.search-input[data-v-6bbfdecd],.user-toolbar select[data-v-6bbfdecd]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);border-radius:8px;outline:none;padding:6px 10px;font-size:12px;transition:all .2s}.search-input[data-v-6bbfdecd]{flex:1;min-width:150px}.search-input[data-v-6bbfdecd]:focus,.user-toolbar select[data-v-6bbfdecd]:focus{border-color:var(--ac)}.users-table[data-v-6bbfdecd]{table-layout:fixed;border:1px solid var(--bd);border-radius:10px;width:100%;font-size:13px;display:table;overflow:hidden}.table-header[data-v-6bbfdecd]{background:var(--ctrl-bg);display:table-header-group}.table-row[data-v-6bbfdecd]{transition:background .15s;display:table-row}.table-row:last-child>div[data-v-6bbfdecd]{border-bottom:none}.table-row.banned[data-v-6bbfdecd]{opacity:.5;background:#ef44440a}.table-header>div[data-v-6bbfdecd]{color:var(--td);border-bottom:1px solid var(--bd);text-align:left;vertical-align:middle;letter-spacing:.3px;text-transform:uppercase;padding:10px 12px;font-size:11px;font-weight:600;display:table-cell}.table-body[data-v-6bbfdecd]{display:table-row-group}.table-body>div[data-v-6bbfdecd]{display:table-row}.table-body>div>div[data-v-6bbfdecd]{border-bottom:1px solid var(--bd);color:var(--tc);vertical-align:middle;padding:10px 12px;display:table-cell}.table-body>div:last-child>div[data-v-6bbfdecd]{border-bottom:none}.table-header>div.sortable[data-v-6bbfdecd]{cursor:pointer;transition:color .2s}.table-header>div.sortable[data-v-6bbfdecd]:hover{color:var(--ac)}.th-content[data-v-6bbfdecd]{align-items:center;gap:4px;display:inline-flex}.th-user[data-v-6bbfdecd],.th-email[data-v-6bbfdecd]{width:22%}.th-pwd[data-v-6bbfdecd]{width:18%}.table-header>div.th-status[data-v-6bbfdecd]{text-align:center;width:8%}.table-header>div.th-act[data-v-6bbfdecd]{text-align:left;width:20%}.td-user[data-v-6bbfdecd]{align-items:center;gap:8px;display:flex!important}.td-user input[type=checkbox][data-v-6bbfdecd]{width:14px;height:14px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.user-ava[data-v-6bbfdecd]{background:var(--ctrl-bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:16px;display:inline-flex;overflow:hidden}.ava-img[data-v-6bbfdecd]{object-fit:cover;border-radius:50%;width:100%;height:100%}.ava-svg[data-v-6bbfdecd]{color:var(--td)}.ava-emoji[data-v-6bbfdecd]{font-size:16px}.edit-mode[data-v-6bbfdecd]{flex-wrap:wrap;gap:4px 8px}.btn-reset-ava[data-v-6bbfdecd]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--td);cursor:pointer;white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:10px;transition:all .2s}.btn-reset-ava[data-v-6bbfdecd]:hover{border-color:var(--ac);color:var(--ac);background:#f9731626}.user-name-txt[data-v-6bbfdecd]{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.td-email[data-v-6bbfdecd],.td-pwd[data-v-6bbfdecd]{white-space:nowrap;text-overflow:ellipsis;color:var(--td);font-size:12px;overflow:hidden}.pwd-input-wrap[data-v-6bbfdecd]{align-items:center;gap:4px;display:flex}.pwd-input-wrap .edit-input[data-v-6bbfdecd]{flex:1}.pwd-toggle[data-v-6bbfdecd]{cursor:pointer;width:22px;height:22px;color:var(--td);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:inline-flex}.pwd-toggle[data-v-6bbfdecd]:hover{background:var(--ctrl-bg);color:var(--tc)}.pwd-placeholder[data-v-6bbfdecd]{color:var(--td);letter-spacing:2px}.td-status[data-v-6bbfdecd]{text-align:center}.td-act[data-v-6bbfdecd]{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:6px;padding:10px 12px!important;display:flex!important}.status[data-v-6bbfdecd]{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.status.active[data-v-6bbfdecd]{color:#10b981;background:#10b9811a}.status.banned[data-v-6bbfdecd]{color:#ef4444;background:#ef44441a}.edit-input[data-v-6bbfdecd]{border:1px solid var(--ac);background:var(--ctrl-bg);width:100%;color:var(--tc);box-sizing:border-box;border-radius:4px;outline:none;height:22px;padding:2px 8px;font-size:12px}.td-act button[data-v-6bbfdecd]{cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:4px;padding:5px 10px;font-size:12px;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.td-act button[data-v-6bbfdecd]:after{content:"";opacity:0;background:#fff3;transition:opacity .2s;position:absolute;inset:0}.td-act button[data-v-6bbfdecd]:active:after{opacity:1}.td-act .btn-label[data-v-6bbfdecd]{font-size:12px}.td-act .btn-edit[data-v-6bbfdecd]{color:#f97316;background:#f973161f}.td-act .btn-edit[data-v-6bbfdecd]:hover{background:#f9731638;transform:translateY(-1px);box-shadow:0 2px 8px #f9731633}.td-act .btn-ban.ban[data-v-6bbfdecd]{color:#ef4444;background:#ef44441f}.td-act .btn-ban.ban[data-v-6bbfdecd]:hover{background:#ef444438;transform:translateY(-1px);box-shadow:0 2px 8px #ef444433}.td-act .btn-ban.unban[data-v-6bbfdecd]{color:#10b981;background:#10b9811f}.td-act .btn-ban.unban[data-v-6bbfdecd]:hover{background:#10b98138;transform:translateY(-1px);box-shadow:0 2px 8px #10b98133}.td-act .btn-del[data-v-6bbfdecd]{color:#dc2626;background:#ef44441f}.td-act .btn-del[data-v-6bbfdecd]:hover{background:#dc262638;transform:translateY(-1px);box-shadow:0 2px 8px #dc262633}.td-act .btn-save[data-v-6bbfdecd]{color:#10b981;background:#10b9811f}.td-act .btn-save[data-v-6bbfdecd]:hover{background:#10b98138;transform:translateY(-1px)}.td-act .btn-cancel[data-v-6bbfdecd]{color:var(--td);background:#7f7f7f1f}.td-act .btn-cancel[data-v-6bbfdecd]:hover{background:#7f7f7f38;transform:translateY(-1px)}.pagination[data-v-6bbfdecd]{justify-content:center;align-items:center;gap:12px;margin-top:1rem;font-size:12px;display:flex}.pagination button[data-v-6bbfdecd]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;padding:6px 12px;transition:all .2s}.pagination button[data-v-6bbfdecd]:hover:not(:disabled){border-color:var(--ac);color:var(--ac)}.pagination button[data-v-6bbfdecd]:disabled{opacity:.4;cursor:not-allowed}.pagination span[data-v-6bbfdecd]{color:var(--td)}.pagination-info[data-v-6bbfdecd]{text-align:center;color:var(--td);margin-bottom:8px;font-size:11px}.loading-row[data-v-6bbfdecd],.empty-row[data-v-6bbfdecd]{display:table-row}.loading-row>div[data-v-6bbfdecd],.empty-row>div[data-v-6bbfdecd]{text-align:center;color:var(--td);padding:2rem;font-size:.8rem;display:table-cell}.blog-mgr[data-v-4520c32e]{margin-top:1.5rem}.blog-mgr__header[data-v-4520c32e]{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.blog-mgr__actions[data-v-4520c32e]{align-items:center;gap:.5rem;display:flex}.blog-mgr__title[data-v-4520c32e]{color:var(--t);align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.blog-mgr__count[data-v-4520c32e]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:1px 8px;font-size:.7rem;font-weight:500}.blog-mgr__btn[data-v-4520c32e]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.blog-mgr__btn[data-v-4520c32e]:hover{border-color:var(--ac);background:#ffffff1f}.blog-mgr__btn[data-v-4520c32e]:disabled{opacity:.5;cursor:not-allowed}.blog-mgr__btn--add[data-v-4520c32e]{color:var(--ac);border-color:#f973164d}.blog-mgr__btn--add[data-v-4520c32e]:hover{border-color:var(--ac);background:#f9731626}.blog-mgr__btn--edit[data-v-4520c32e]{color:var(--ac);border-color:#f973164d}.blog-mgr__btn--edit[data-v-4520c32e]:hover{background:#f9731626}.blog-mgr__btn--toggle[data-v-4520c32e]{color:var(--g);border-color:#22c55e4d}.blog-mgr__btn--toggle[data-v-4520c32e]:hover{background:#22c55e26}.blog-mgr__btn--delete[data-v-4520c32e]{color:var(--r);border-color:var(--rg)}.blog-mgr__btn--delete[data-v-4520c32e]:hover:not(:disabled){background:#ef444426}.blog-mgr__btn--save[data-v-4520c32e]{color:#fff;background:var(--ac);border-color:var(--ac)}.blog-mgr__btn--save[data-v-4520c32e]:hover:not(:disabled){opacity:.9}.blog-mgr__btn--close[data-v-4520c32e]{color:var(--td)}.blog-mgr__list[data-v-4520c32e]{flex-direction:column;gap:.5rem;max-height:270px;display:flex;overflow-y:auto}.blog-mgr__item[data-v-4520c32e]{background:var(--card);border:1px solid var(--bd);border-radius:10px;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 1rem;transition:all .2s;display:flex}.blog-mgr__item[data-v-4520c32e]:hover{border-color:#f973164d}.blog-mgr__item.draft[data-v-4520c32e]{opacity:.7}.blog-mgr__item-main[data-v-4520c32e]{flex:1;min-width:0}.blog-mgr__item-title[data-v-4520c32e]{color:var(--t);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex;overflow:hidden}.blog-mgr__status[data-v-4520c32e]{border-radius:8px;flex-shrink:0;padding:2px 6px;font-size:.6rem;font-weight:600}.blog-mgr__status.published[data-v-4520c32e]{background:var(--gg);color:var(--g)}.blog-mgr__status.draft[data-v-4520c32e]{color:var(--y);background:#eab30833}.blog-mgr__item-meta[data-v-4520c32e]{color:var(--td);align-items:center;gap:.8rem;margin-top:.3rem;font-size:.65rem;display:flex}.blog-mgr__item-meta span[data-v-4520c32e]{align-items:center;gap:.2rem;display:flex}.blog-mgr__item-tags[data-v-4520c32e]{white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.blog-mgr__item-actions[data-v-4520c32e]{flex-shrink:0;gap:.4rem;display:flex}.blog-mgr__btn--active[data-v-4520c32e]{color:var(--ac);border-color:var(--ac);background:#f973161a}.blog-mgr__empty[data-v-4520c32e]{color:var(--td);flex-direction:column;align-items:center;gap:.5rem;padding:2rem 0;display:flex}.blog-mgr__empty p[data-v-4520c32e]{font-size:.8rem}.blog-mgr__expand[data-v-4520c32e]{cursor:pointer;color:var(--ac);border:1px dashed var(--bd);border-radius:8px;justify-content:center;align-items:center;gap:.4rem;margin-top:.5rem;padding:.6rem;font-size:.75rem;transition:all .2s;display:flex}.blog-mgr__expand[data-v-4520c32e]:hover{border-color:var(--ac);background:#7c3aed0d}.blog-mgr__expand .rotated[data-v-4520c32e]{transform:rotate(180deg)}.blog-mgr__form[data-v-4520c32e]{background:var(--card);border:1px solid var(--bd);border-radius:12px;overflow:hidden}.blog-mgr__form-header[data-v-4520c32e]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;padding:1rem 1.2rem;display:flex}.blog-mgr__form-header h3[data-v-4520c32e]{color:var(--ac);font-size:.95rem;font-weight:700}.blog-mgr__form-body[data-v-4520c32e]{flex-direction:column;gap:1rem;padding:1.2rem;display:flex}.blog-mgr__field[data-v-4520c32e]{flex-direction:column;gap:.4rem;display:flex}.blog-mgr__field label[data-v-4520c32e]{color:var(--td);font-size:.75rem;font-weight:600}.blog-mgr__field input[data-v-4520c32e],.blog-mgr__field textarea[data-v-4520c32e]{border:1px solid var(--bd);color:var(--t);resize:vertical;background:#ffffff0d;border-radius:8px;outline:none;padding:.6rem .8rem;font-family:inherit;font-size:.8rem;transition:border-color .2s}.blog-mgr__field input[data-v-4520c32e]:focus,.blog-mgr__field textarea[data-v-4520c32e]:focus{border-color:var(--ac)}.blog-mgr__field textarea[data-v-4520c32e]{min-height:250px;line-height:1.6}.blog-mgr__field--row[data-v-4520c32e]{flex-direction:row;align-items:center}.blog-mgr__checkbox[data-v-4520c32e]{color:var(--t);cursor:pointer;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.blog-mgr__checkbox input[type=checkbox][data-v-4520c32e]{width:16px;height:16px;accent-color:var(--ac)}.blog-mgr__form-actions[data-v-4520c32e]{align-items:center;gap:.8rem;display:flex}.blog-mgr__msg[data-v-4520c32e]{color:var(--g);background:var(--gg);border-radius:8px;padding:.3rem .6rem;font-size:.75rem}.blog-mgr__msg.error[data-v-4520c32e]{color:var(--r);background:var(--rg)}.blog-mgr__autosave[data-v-4520c32e]{color:var(--g);background:var(--gg);border-radius:8px;padding:2px 8px;font-size:.65rem;animation:.3s fadeIn}.blog-mgr__batch-bar[data-v-4520c32e]{background:#f9731614;border:1px solid #f9731640;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.5rem .8rem;display:flex}.blog-mgr__batch-checkbox[data-v-4520c32e]{color:var(--ctrl-t);cursor:pointer;align-items:center;gap:.4rem;font-size:.75rem;display:flex}.blog-mgr__batch-checkbox input[type=checkbox][data-v-4520c32e]{accent-color:var(--ac)}.blog-mgr__item-checkbox[data-v-4520c32e]{flex-shrink:0;padding-right:.5rem}.blog-mgr__item-checkbox input[type=checkbox][data-v-4520c32e]{accent-color:var(--ac);cursor:pointer;width:16px;height:16px}@media (width<=640px){.blog-mgr__item[data-v-4520c32e]{flex-direction:column;align-items:flex-start}.blog-mgr__item-actions[data-v-4520c32e]{justify-content:flex-end;width:100%}}.file-mgr__btn[data-v-4520c32e]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.file-mgr__btn[data-v-4520c32e]:disabled{opacity:.4;cursor:not-allowed}.file-mgr__btn--refresh[data-v-4520c32e]{color:var(--ac);border-color:#f973164d}.file-mgr__btn--refresh[data-v-4520c32e]:hover{background:#f9731626}.file-manager[data-v-0d921d76]{margin-top:1.5rem}.file-mgr__header[data-v-0d921d76]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.8rem;display:flex}.file-mgr__title[data-v-0d921d76]{color:var(--t);align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.file-mgr__count[data-v-0d921d76]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:1px 8px;font-size:.7rem;font-weight:500}.file-mgr__actions[data-v-0d921d76]{gap:.5rem;display:flex}.file-mgr__btn[data-v-0d921d76]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.file-mgr__btn[data-v-0d921d76]:disabled{opacity:.4;cursor:not-allowed}.file-mgr__btn--danger[data-v-0d921d76]{color:var(--r);border-color:var(--rg)}.file-mgr__btn--danger[data-v-0d921d76]:hover:not(:disabled){background:#ef444426}.file-mgr__btn--refresh[data-v-0d921d76]{color:var(--ac);border-color:#f973164d}.file-mgr__btn--refresh[data-v-0d921d76]:hover{background:#f9731626}.file-mgr__sticky-header[data-v-0d921d76]{border:1px solid var(--bd);background:var(--bg);border-bottom:none;border-radius:10px 10px 0 0;overflow:hidden}.file-mgr__item--header[data-v-0d921d76]{color:var(--td);border-bottom:2px solid var(--bd);font-size:.75rem;font-weight:600}.file-mgr__list[data-v-0d921d76]{background:var(--card);border:1px solid var(--bd);scrollbar-width:thin;scrollbar-color:var(--bd) transparent;border-top:none;border-radius:0 0 10px 10px;max-height:260px;overflow-y:auto}.file-mgr__item[data-v-0d921d76]{border-bottom:1px solid var(--bd);grid-template-columns:40px 2fr 1.5fr 80px 150px 60px;align-items:center;gap:10px;padding:10px 16px;transition:background .2s;display:grid}.file-mgr__item[data-v-0d921d76]:last-child{border-bottom:none}.file-mgr__item[data-v-0d921d76]:hover{background:#ffffff08}.file-mgr__checkbox input[type=checkbox][data-v-0d921d76]{width:16px;height:16px;accent-color:var(--ac);cursor:pointer}.file-mgr__desc-text[data-v-0d921d76]{cursor:pointer;color:var(--td);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;display:block;overflow:hidden}.file-mgr__desc-text[data-v-0d921d76]:hover{color:var(--ac)}.file-mgr__desc-edit[data-v-0d921d76]{gap:4px;display:flex}.desc-input[data-v-0d921d76]{border:1px solid var(--ac);background:var(--ctrl-bg);min-width:0;color:var(--t);border-radius:4px;flex:1;padding:2px 6px;font-size:.7rem}.desc-save[data-v-0d921d76]{border:1px solid var(--bd);cursor:pointer;background:var(--ctrl-bg);color:var(--t);border-radius:4px;padding:2px 6px;font-size:.7rem}.desc-save[data-v-0d921d76]:hover{background:var(--ac);color:#fff;border-color:var(--ac)}.file-mgr__name[data-v-0d921d76]{color:var(--t);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.5rem;min-width:0;font-size:.8rem;display:flex;overflow:hidden}.file-mgr__icon[data-v-0d921d76]{flex-shrink:0}.file-mgr__link[data-v-0d921d76]{color:var(--t);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.file-mgr__link[data-v-0d921d76]:hover{color:var(--ac);text-decoration:underline}.file-mgr__size[data-v-0d921d76]{color:var(--td);text-align:left;font-size:.75rem}.file-mgr__modified[data-v-0d921d76]{color:var(--td);font-size:.7rem}.file-mgr__actions-col[data-v-0d921d76]{justify-content:center;display:flex}.file-mgr__btn-icon[data-v-0d921d76]{cursor:pointer;color:var(--td);background:0 0;border:none;border-radius:8px;align-items:center;gap:.3rem;padding:.3rem .5rem;font-size:.7rem;transition:all .2s;display:inline-flex}.file-mgr__btn-icon[data-v-0d921d76]:hover{color:#ef4444;background:#ef444426}.file-mgr__btn-icon--delete[data-v-0d921d76]{color:#ef4444;background:#ef44441a}.file-mgr__btn-icon--delete[data-v-0d921d76]:hover{background:#ef444440}.file-mgr__btn-icon-text[data-v-0d921d76]{font-size:.7rem}.file-mgr__loading[data-v-0d921d76],.file-mgr__empty[data-v-0d921d76]{text-align:center;color:var(--td);padding:2rem}.file-mgr__empty p[data-v-0d921d76]{margin-top:.5rem;font-size:.8rem}@media (width<=768px){.file-mgr__item[data-v-0d921d76]{grid-template-columns:30px 1fr 60px;gap:8px;padding:8px 12px}.file-mgr__modified[data-v-0d921d76],.file-mgr__desc[data-v-0d921d76]{display:none}}.health-panel[data-v-b197a04a]{margin-top:1.5rem}.health-header[data-v-b197a04a]{align-items:center;gap:.6rem;margin-bottom:.8rem;display:flex}.health-header .file-mgr__btn[data-v-b197a04a]{margin-left:auto}.health-header h3[data-v-b197a04a]{color:var(--t);margin:0;font-size:.95rem;font-weight:600}.health-loading[data-v-b197a04a],.health-error[data-v-b197a04a]{text-align:center;color:var(--td);padding:1rem;font-size:.8rem}.health-error[data-v-b197a04a]{color:var(--r)}.health-content[data-v-b197a04a]{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.8rem;display:grid}.health-card[data-v-b197a04a]{background:var(--card);border:1px solid var(--bd);border-radius:10px;align-items:center;gap:.8rem;padding:1rem;transition:all .2s;display:flex}.health-card[data-v-b197a04a]:hover{border-color:#f973164d}.health-card__icon[data-v-b197a04a]{flex-shrink:0;font-size:1.6rem}.health-card__info[data-v-b197a04a]{flex:1;min-width:0}.health-card__label[data-v-b197a04a]{color:var(--td);margin-bottom:2px;font-size:.7rem}.health-card__value[data-v-b197a04a]{color:var(--t);flex-wrap:wrap;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.health-card__value .ok[data-v-b197a04a]{color:var(--g)}.health-card__value .err[data-v-b197a04a]{color:var(--r)}.health-card__detail[data-v-b197a04a]{color:var(--td);margin-top:2px;font-size:.65rem}.ssl-ok[data-v-b197a04a]{border-left:3px solid var(--g)}.ssl-warning[data-v-b197a04a]{border-left:3px solid var(--y)}.ssl-critical[data-v-b197a04a]{border-left:3px solid var(--r)}.ssl-unknown[data-v-b197a04a]{border-left:3px solid var(--bd)}.db[data-v-b197a04a]{border-left:3px solid var(--ac)}.services[data-v-b197a04a]{border-left:3px solid #3b82f6}.backup[data-v-b197a04a]{border-left:3px solid #8b5cf6}.system[data-v-b197a04a]{border-left:3px solid #f59e0b}.file-mgr__btn[data-v-b197a04a]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.file-mgr__btn[data-v-b197a04a]:disabled{opacity:.4;cursor:not-allowed}.file-mgr__btn--refresh[data-v-b197a04a]{color:var(--ac);border-color:#f973164d}.file-mgr__btn--refresh[data-v-b197a04a]:hover{background:#f9731626}.icon-ssl-ok[data-v-b197a04a]{color:var(--g)}.icon-ssl-warning[data-v-b197a04a]{color:var(--y)}.icon-ssl-critical[data-v-b197a04a]{color:var(--r)}.icon-ssl-unknown[data-v-b197a04a]{color:var(--td)}.icon-db[data-v-b197a04a]{color:var(--ac)}.icon-services[data-v-b197a04a]{color:#3b82f6}.icon-backup[data-v-b197a04a]{color:#8b5cf6}.icon-system[data-v-b197a04a]{color:#f59e0b}.health-card__action[data-v-b197a04a]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ac);cursor:pointer;border-radius:8px;align-items:center;gap:.3rem;margin-top:.3rem;padding:.25rem .6rem;font-size:.7rem;transition:all .2s;display:inline-flex}.health-card__action[data-v-b197a04a]:hover:not(:disabled){background:#f9731626}.health-card__action[data-v-b197a04a]:disabled{opacity:.5;cursor:not-allowed}@keyframes spin-c41b2bfc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.admin-page__loading[data-v-c41b2bfc]{min-height:300px;color:var(--td);justify-content:center;align-items:center;font-size:.9rem;display:flex}.admin-page[data-v-c41b2bfc]{animation:.2s fadeIn-c41b2bfc}.admin-panel[data-v-c41b2bfc]{box-sizing:border-box;width:100%;padding:1.5rem}.admin-panel__header[data-v-c41b2bfc]{border-bottom:2px solid var(--bd);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.2rem 0;display:flex}.admin-panel__title[data-v-c41b2bfc]{color:var(--ac);align-items:center;gap:.6rem;font-size:1.4rem;font-weight:700;display:flex}.admin-panel__user[data-v-c41b2bfc]{color:var(--td);font-size:.8rem;font-weight:400}.admin-panel__version[data-v-c41b2bfc]{color:var(--td);opacity:.6;background:var(--bd);border-radius:6px;align-items:center;gap:.3rem;margin-left:.5rem;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.admin-panel__actions[data-v-c41b2bfc]{flex-wrap:wrap;gap:.8rem;display:flex}.admin-panel__btn[data-v-c41b2bfc]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.admin-panel__btn[data-v-c41b2bfc]:hover{border-color:var(--ac);background:#ffffff1f}.admin-panel__btn--pwd[data-v-c41b2bfc]{color:var(--ac);border-color:#f973164d}.admin-panel__btn--pwd[data-v-c41b2bfc]:hover{border-color:var(--ac);background:#f9731626}.admin-panel__btn--logout[data-v-c41b2bfc]{color:var(--r);border-color:#ef44444d}.admin-panel__btn--logout[data-v-c41b2bfc]:hover{border-color:var(--r);background:#ef444426}.admin-panel__btn--delete[data-v-c41b2bfc]{color:var(--r);border-color:var(--rg);padding:.3rem .6rem}.admin-panel__btn--delete[data-v-c41b2bfc]:hover:not(:disabled){background:var(--r);color:#fff;border-color:var(--r)}.admin-panel__btn[data-v-c41b2bfc]:disabled{opacity:.5;cursor:not-allowed}.admin-panel__refresh[data-v-c41b2bfc]{flex-wrap:wrap;gap:.5rem;display:flex}.spin[data-v-c41b2bfc]{animation:1s linear infinite spin-c41b2bfc}.admin-panel__refresh-result[data-v-c41b2bfc]{color:var(--g);background:var(--gg);border-radius:8px;padding:.3rem .6rem;font-size:.75rem;animation:.3s fadeIn-c41b2bfc}.admin-panel__refresh-result.error[data-v-c41b2bfc]{color:var(--r);background:var(--rg)}.admin-panel__section[data-v-c41b2bfc]{margin-bottom:1.5rem}.admin-panel__section[data-v-c41b2bfc]:first-child{margin-top:0}.admin-panel__section>.admin-panel__section[data-v-c41b2bfc]{margin-top:1.5rem;margin-bottom:.6rem}.admin-panel__section-title[data-v-c41b2bfc]{color:var(--t);align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.admin-panel__section-title .file-mgr__btn[data-v-c41b2bfc]{margin-left:auto}.admin-panel__section-count[data-v-c41b2bfc]{color:var(--td);background:var(--ctrl-bg);border-radius:10px;padding:1px 8px;font-size:.7rem;font-weight:500}.admin-panel__list[data-v-c41b2bfc]{flex-direction:column;gap:.5rem;max-height:40vh;margin-bottom:1rem;display:flex;overflow-y:auto}.admin-panel__msg[data-v-c41b2bfc]{background:var(--card);border:1px solid var(--bd);border-radius:10px;flex-direction:column;gap:.5rem;padding:.8rem 1rem;transition:all .2s;display:flex}.admin-panel__msg[data-v-c41b2bfc]:hover{border-color:#f973164d}.admin-panel__msg-header[data-v-c41b2bfc]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-panel__msg-avatar[data-v-c41b2bfc]{flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:inline-flex}.admin-avatar[data-v-c41b2bfc]{object-fit:cover;border-radius:50%;width:24px;height:24px;display:block}.admin-panel__msg-nick[data-v-c41b2bfc]{color:var(--t);font-size:.85rem;font-weight:600}.admin-panel__msg-province[data-v-c41b2bfc]{color:var(--ac);background:#f973161a;border-radius:8px;padding:1px 6px;font-size:.65rem}.admin-panel__msg-ip[data-v-c41b2bfc]{color:var(--td);background:var(--ctrl-bg);border-radius:8px;padding:1px 6px;font-family:monospace;font-size:.65rem}.admin-panel__msg-time[data-v-c41b2bfc]{color:var(--td);margin-left:auto;font-size:.65rem}.admin-panel__msg-content[data-v-c41b2bfc]{color:var(--t);word-break:break-word;padding-left:1.8rem;font-size:.8rem;line-height:1.5}.admin-panel__msg-footer[data-v-c41b2bfc]{justify-content:space-between;align-items:center;padding-left:1.8rem;display:flex}.admin-panel__msg-likes[data-v-c41b2bfc]{color:var(--td);align-items:center;gap:.2rem;font-size:.7rem;display:inline-flex}.admin-panel__empty[data-v-c41b2bfc]{text-align:center;color:var(--td);padding:2rem 0}.empty-icon[data-v-c41b2bfc]{opacity:.6;margin-bottom:.5rem;font-size:2rem}.empty-text[data-v-c41b2bfc]{color:var(--t);margin-bottom:.2rem;font-size:.85rem;font-weight:500}.empty-hint[data-v-c41b2bfc]{color:var(--td);font-size:.7rem}.admin-panel__pagination[data-v-c41b2bfc]{justify-content:center;align-items:center;gap:1rem;margin-top:.8rem;padding:.6rem 0;display:flex}.admin-panel__page-btn[data-v-c41b2bfc]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;padding:.4rem 1rem;font-size:.75rem;transition:all .2s}.admin-panel__page-btn[data-v-c41b2bfc]:hover:not(:disabled){border-color:var(--ac);background:#ffffff26}.admin-panel__page-btn[data-v-c41b2bfc]:disabled{opacity:.4;cursor:not-allowed}.admin-panel__page-info[data-v-c41b2bfc]{color:var(--td);font-size:.8rem}.batch-toolbar[data-v-c41b2bfc]{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;margin-bottom:8px;padding:8px 0;display:flex}.batch-checkbox[data-v-c41b2bfc]{color:var(--td);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:flex}.batch-checkbox input[type=checkbox][data-v-c41b2bfc]{width:14px;height:14px;accent-color:var(--ac);cursor:pointer}.msg-checkbox[data-v-c41b2bfc]{flex-shrink:0}.msg-checkbox input[type=checkbox][data-v-c41b2bfc]{width:14px;height:14px;accent-color:var(--ac);cursor:pointer}@keyframes fadeIn-c41b2bfc{0%{opacity:0}to{opacity:1}}@media (width<=768px){.admin-row[data-v-c41b2bfc]{flex-direction:column}}@media (width<=640px){.admin-panel[data-v-c41b2bfc]{padding:1rem}.admin-panel__header[data-v-c41b2bfc]{flex-direction:column;align-items:flex-start}.admin-panel__list[data-v-c41b2bfc]{max-height:40vh}.admin-panel__msg-content[data-v-c41b2bfc],.admin-panel__msg-footer[data-v-c41b2bfc]{padding-left:0}}.pwd-overlay[data-v-c41b2bfc]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn-c41b2bfc;display:flex;position:fixed;inset:0}.pwd-dialog[data-v-c41b2bfc]{background:var(--card);border:1.5px solid var(--bd);border-radius:16px;width:90%;max-width:380px;padding:2rem;animation:.3s fadeIn-c41b2bfc;box-shadow:0 20px 60px #00000080}.pwd-dialog__header[data-v-c41b2bfc]{color:var(--t);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.1rem;font-weight:700;display:flex}.pwd-dialog__close[data-v-c41b2bfc]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;margin-left:auto;padding:4px;transition:all .2s}.pwd-dialog__close[data-v-c41b2bfc]:hover{background:var(--ctrl-bg);color:var(--t)}.pwd-dialog__body[data-v-c41b2bfc]{flex-direction:column;gap:1rem;display:flex}.pwd-dialog__hint[data-v-c41b2bfc]{color:var(--td);font-size:.8rem;line-height:1.5}.pwd-dialog__input[data-v-c41b2bfc]{border:1px solid var(--bd);color:var(--t);background:#ffffff0d;border-radius:10px;outline:none;padding:.6rem .8rem;font-size:.85rem;transition:border-color .2s}.pwd-dialog__input[data-v-c41b2bfc]:focus{border-color:var(--ac)}.pwd-dialog__btn[data-v-c41b2bfc]{background:var(--ac);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.7rem;font-size:.9rem;font-weight:600;transition:all .2s}.pwd-dialog__btn[data-v-c41b2bfc]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.pwd-dialog__btn[data-v-c41b2bfc]:disabled{opacity:.5;cursor:not-allowed}.pwd-dialog__error[data-v-c41b2bfc]{color:var(--r);background:var(--rg);text-align:center;border-radius:8px;padding:.4rem .8rem;font-size:.75rem}.pwd-dialog__success[data-v-c41b2bfc]{color:var(--g);background:var(--gg);text-align:center;border-radius:8px;padding:.4rem .8rem;font-size:.75rem}.pwd-dialog__captcha[data-v-c41b2bfc]{background:#f9731614;border:1px solid #f9731633;border-radius:10px;align-items:center;gap:.8rem;padding:.6rem .8rem;display:flex}.pwd-dialog__captcha-question[data-v-c41b2bfc]{color:var(--ac);white-space:nowrap;font-size:.9rem;font-weight:700}.pwd-dialog__captcha-input[data-v-c41b2bfc]{border:1px solid var(--bd);width:80px;color:var(--t);text-align:center;background:#ffffff0d;border-radius:8px;outline:none;padding:.3rem .4rem;font-size:.75rem;transition:border-color .2s}.pwd-dialog__captcha-input[data-v-c41b2bfc]:focus{border-color:var(--ac)}.pwd-dialog__captcha-input[data-v-c41b2bfc]::placeholder{font-size:.65rem}.stats-summary[data-v-c41b2bfc]{grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1rem;display:grid}.stats-card[data-v-c41b2bfc]{background:var(--card);border:1px solid var(--bd);text-align:center;border-radius:10px;padding:.8rem}.stats-card__label[data-v-c41b2bfc]{color:var(--td);margin-bottom:.3rem;font-size:.65rem}.stats-card__value[data-v-c41b2bfc]{color:var(--ac);font-size:1.4rem;font-weight:700}.chart-tabs[data-v-c41b2bfc]{gap:.5rem;margin-bottom:.8rem;display:flex}.chart-tab[data-v-c41b2bfc]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;padding:.4rem 1rem;font-size:.75rem;transition:all .2s}.chart-tab.active[data-v-c41b2bfc]{background:var(--ac);color:#fff;border-color:var(--ac)}.bar-chart[data-v-c41b2bfc]{background:var(--card);border:1px solid var(--bd);border-radius:10px;margin-bottom:.8rem;padding:1rem}.bar-chart__bars[data-v-c41b2bfc]{align-items:flex-end;gap:2px;height:120px;display:flex;overflow-x:auto}.bar-chart__col[data-v-c41b2bfc]{flex-direction:column;flex:1;align-items:center;min-width:18px;display:flex}.bar-chart__bar-group[data-v-c41b2bfc]{align-items:flex-end;gap:1px;height:100px;display:flex}.bar-chart__bar[data-v-c41b2bfc]{border-radius:2px 2px 0 0;width:8px;min-height:2px;transition:height .3s}.bar-chart__bar.bar-pv[data-v-c41b2bfc]{background:var(--ac)}.bar-chart__bar.bar-uv[data-v-c41b2bfc]{background:var(--g)}.bar-chart__label[data-v-c41b2bfc]{color:var(--td);white-space:nowrap;margin-top:.3rem;font-size:.5rem}.bar-chart__legend[data-v-c41b2bfc]{justify-content:center;gap:1rem;margin-top:.6rem;display:flex}.legend-item[data-v-c41b2bfc]{color:var(--td);align-items:center;gap:.3rem;font-size:.65rem;display:flex}.legend-dot[data-v-c41b2bfc]{border-radius:2px;width:8px;height:8px;display:inline-block}.legend-dot.bar-pv[data-v-c41b2bfc]{background:var(--ac)}.legend-dot.bar-uv[data-v-c41b2bfc]{background:var(--g)}.announcement-form[data-v-c41b2bfc]{gap:.5rem;margin-bottom:.8rem;display:flex}.announcement-input[data-v-c41b2bfc]{border:1px solid var(--bd);color:var(--t);background:#ffffff0d;border-radius:8px;outline:none;flex:1;padding:.5rem .8rem;font-size:.8rem;transition:border-color .2s}.announcement-input[data-v-c41b2bfc]:focus{border-color:var(--ac)}.log-action[data-v-c41b2bfc]{border-radius:8px;padding:2px 8px;font-size:.7rem;font-weight:500}.log-action--danger[data-v-c41b2bfc]{color:var(--r);background:var(--rg)}.log-action--success[data-v-c41b2bfc]{color:var(--g);background:var(--gg)}.log-action--info[data-v-c41b2bfc]{color:var(--ac);background:#f9731626}.log-action--default[data-v-c41b2bfc]{color:var(--td);background:var(--ctrl-bg)}.log-user[data-v-c41b2bfc]{color:var(--ac);font-size:.7rem;font-weight:600}.export-row[data-v-c41b2bfc]{flex-wrap:wrap;gap:.8rem;margin-bottom:1rem;display:flex}.admin-row[data-v-c41b2bfc]{gap:16px;display:flex}.admin-col[data-v-c41b2bfc]{flex:1;min-width:0}.settings-form[data-v-c41b2bfc]{background:var(--card);border:1px solid var(--bd);border-radius:10px;flex-direction:column;gap:.8rem;margin-bottom:1.5rem;padding:1rem;display:flex}.settings-row[data-v-c41b2bfc]{align-items:center;gap:.8rem;display:flex}.settings-label[data-v-c41b2bfc]{color:var(--td);white-space:nowrap;min-width:70px;font-size:.75rem}.settings-input[data-v-c41b2bfc]{border:1px solid var(--bd);color:var(--t);background:#ffffff0d;border-radius:8px;outline:none;flex:1;padding:.4rem .6rem;font-size:.8rem;transition:border-color .2s}.settings-input[data-v-c41b2bfc]:focus{border-color:var(--ac)}.settings-textarea[data-v-c41b2bfc]{border:1px solid var(--bd);color:var(--t);resize:vertical;background:#ffffff0d;border-radius:8px;outline:none;flex:1;padding:.4rem .6rem;font-family:inherit;font-size:.8rem;transition:border-color .2s}.settings-textarea[data-v-c41b2bfc]:focus{border-color:var(--ac)}.settings-msg[data-v-c41b2bfc]{color:var(--g);background:var(--gg);border-radius:8px;padding:.3rem .6rem;font-size:.75rem}.settings-msg.error[data-v-c41b2bfc]{color:var(--r);background:var(--rg)}.city-select[data-v-c41b2bfc]{flex:1;position:relative}.city-select__trigger[data-v-c41b2bfc]{background:var(--ctrl-bg);border:1px solid var(--bd);color:var(--tc);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:.45rem .7rem;font-size:.8rem;transition:border-color .2s;display:flex}.city-select__trigger[data-v-c41b2bfc]:hover{border-color:var(--ac)}.city-select__trigger svg[data-v-c41b2bfc]{transition:transform .2s}.city-select__trigger svg.rotate[data-v-c41b2bfc]{transform:rotate(180deg)}.city-select__dropdown[data-v-c41b2bfc]{background:var(--card);border:1px solid var(--bd);z-index:10;border-radius:10px;animation:.15s fadeIn-c41b2bfc;position:absolute;bottom:calc(100% + 4px);left:0;right:0;overflow:hidden;box-shadow:0 8px 24px #0000004d}.city-picker[data-v-c41b2bfc]{width:320px;display:flex;left:auto}.city-picker__provinces[data-v-c41b2bfc]{border-right:1px solid var(--bd);scrollbar-width:thin;scrollbar-color:var(--bd) transparent;width:120px;max-height:240px;overflow-y:auto}.city-picker__provinces[data-v-c41b2bfc]::-webkit-scrollbar{width:3px}.city-picker__provinces[data-v-c41b2bfc]::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}.city-picker__province[data-v-c41b2bfc]{color:var(--td);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;padding:.3rem .5rem;font-size:.7rem;transition:all .15s;overflow:hidden}.city-picker__province[data-v-c41b2bfc]:hover{color:var(--tc);background:#ffffff0f}.city-picker__province.active[data-v-c41b2bfc]{color:var(--ac);background:#f9731614;font-weight:600}.city-picker__cities[data-v-c41b2bfc]{scrollbar-width:thin;scrollbar-color:var(--bd) transparent;flex:1;max-height:240px;overflow-y:auto}.city-picker__cities[data-v-c41b2bfc]::-webkit-scrollbar{width:3px}.city-picker__cities[data-v-c41b2bfc]::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}.city-select__item[data-v-c41b2bfc]{color:var(--td);cursor:pointer;padding:.35rem .7rem;font-size:.75rem;transition:all .15s}.city-select__item[data-v-c41b2bfc]:hover{color:var(--tc);background:#ffffff0f}.city-select__item.active[data-v-c41b2bfc]{color:var(--ac);font-weight:600}@media (width<=640px){.stats-summary[data-v-c41b2bfc]{grid-template-columns:repeat(2,1fr)}.announcement-form[data-v-c41b2bfc]{flex-direction:column}.settings-row[data-v-c41b2bfc]{flex-direction:column;align-items:flex-start}.settings-label[data-v-c41b2bfc]{min-width:auto}}.admin-panel .file-mgr__btn[data-v-c41b2bfc]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.admin-panel .file-mgr__btn[data-v-c41b2bfc]:disabled{opacity:.4;cursor:not-allowed}.admin-panel .file-mgr__btn--refresh[data-v-c41b2bfc]{color:var(--ac);border-color:#f973164d}.admin-panel .file-mgr__btn--refresh[data-v-c41b2bfc]:hover{background:#f9731626}.auth-overlay[data-v-8f7f41f9]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn-8f7f41f9;display:flex;position:fixed;inset:0}.auth-dialog[data-v-8f7f41f9]{background:var(--card);border:1.5px solid var(--bd);border-radius:16px;width:90%;max-width:380px;padding:2rem;animation:.3s slideUp-8f7f41f9;box-shadow:0 20px 60px #00000080}.auth-dialog__header[data-v-8f7f41f9]{color:var(--t);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:1.1rem;font-weight:700;display:flex}.auth-dialog__close[data-v-8f7f41f9]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;margin-left:auto;padding:4px;transition:all .2s}.auth-dialog__close[data-v-8f7f41f9]:hover{background:var(--ctrl-bg);color:var(--t)}.pwd-toggle[data-v-8f7f41f9]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:2px;transition:all .15s;display:inline-flex}.pwd-toggle[data-v-8f7f41f9]:hover{color:var(--t);background:#7f7f7f1a}.auth-dialog__form[data-v-8f7f41f9]{flex-direction:column;gap:.8rem;display:flex}.auth-dialog__field[data-v-8f7f41f9]{border:1px solid var(--bd);background:#ffffff0d;border-radius:10px;align-items:center;gap:.6rem;padding:.55rem .8rem;transition:border-color .2s;display:flex}.auth-dialog__field[data-v-8f7f41f9]:focus-within{border-color:var(--ac)}.auth-dialog__field svg[data-v-8f7f41f9]{color:var(--td);flex-shrink:0}.auth-dialog__field input[data-v-8f7f41f9]{color:var(--t);background:0 0;border:none;outline:none;flex:1;font-size:.8rem}.auth-dialog__field input[data-v-8f7f41f9]::placeholder{color:var(--td)}.auth-dialog__code-row[data-v-8f7f41f9]{align-items:center;gap:.6rem;display:flex}.auth-dialog__field--code[data-v-8f7f41f9]{flex:1}.auth-dialog__code-btn[data-v-8f7f41f9]{background:var(--ctrl-bg);border:1px solid var(--bd);color:var(--ac);cursor:pointer;white-space:nowrap;border-radius:10px;padding:.55rem .8rem;font-size:.7rem;font-weight:600;transition:all .2s}.auth-dialog__code-btn[data-v-8f7f41f9]:hover:not(:disabled){border-color:var(--ac);background:#f9731626}.auth-dialog__code-btn[data-v-8f7f41f9]:disabled{opacity:.5;cursor:not-allowed}.auth-dialog__captcha[data-v-8f7f41f9]{background:#f9731614;border:1px solid #f9731633;border-radius:10px;align-items:center;gap:.8rem;padding:.5rem .8rem;display:flex}.auth-dialog__captcha-q[data-v-8f7f41f9]{color:var(--ac);white-space:nowrap;font-size:.85rem;font-weight:700}.auth-dialog__captcha-input[data-v-8f7f41f9]{border:1px solid var(--bd);width:70px;color:var(--t);text-align:center;background:#ffffff0d;border-radius:8px;outline:none;padding:.3rem .4rem;font-size:.75rem;transition:border-color .2s}.auth-dialog__captcha-input[data-v-8f7f41f9]:focus{border-color:var(--ac)}.auth-dialog__captcha-input[data-v-8f7f41f9]::placeholder{font-size:.65rem}.auth-dialog__error[data-v-8f7f41f9]{color:var(--r);background:var(--rg);text-align:center;border-radius:8px;padding:.4rem .8rem;font-size:.75rem}.auth-dialog__btn[data-v-8f7f41f9]{background:var(--ac);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.65rem;font-size:.85rem;font-weight:600;transition:all .2s}.auth-dialog__btn[data-v-8f7f41f9]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.auth-dialog__btn[data-v-8f7f41f9]:disabled{opacity:.5;cursor:not-allowed}.auth-dialog__switch[data-v-8f7f41f9]{text-align:center;color:var(--td);margin-top:.2rem;font-size:.75rem}.auth-dialog__switch a[data-v-8f7f41f9]{color:var(--ac);font-weight:600;text-decoration:none}.auth-dialog__switch a[data-v-8f7f41f9]:hover{text-decoration:underline}@keyframes fadeIn-8f7f41f9{0%{opacity:0}to{opacity:1}}@keyframes slideUp-8f7f41f9{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.announcement-bar[data-v-fa5419dd]{z-index:50;background:#f973161f;border-bottom:1px solid #f973164d;padding:.4rem 0;position:relative}.announcement-bar__inner[data-v-fa5419dd]{align-items:center;gap:.5rem;max-width:1200px;margin:0 auto;padding:0 2rem;display:flex}.announcement-bar__icon[data-v-fa5419dd]{color:var(--ac);flex-shrink:0}.announcement-bar__text[data-v-fa5419dd]{color:var(--t);flex:1;font-size:.8rem;line-height:1.4}.announcement-bar__close[data-v-fa5419dd]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;align-items:center;padding:2px;transition:all .2s;display:flex}.announcement-bar__close[data-v-fa5419dd]:hover{color:var(--t);background:#ffffff1a}@media (width<=640px){.announcement-bar__inner[data-v-fa5419dd]{padding:0 1rem}.announcement-bar__text[data-v-fa5419dd]{font-size:.75rem}}.blog-section[data-v-6ac0dd11]{max-width:1200px;margin:0 auto;padding:2rem 0}.blog-header[data-v-6ac0dd11]{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.blog-header-actions[data-v-6ac0dd11]{align-items:center;gap:.5rem;display:flex}.blog-write-btn[data-v-6ac0dd11]{border:1px solid var(--ac);background:var(--ac);color:#fff;cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.blog-write-btn[data-v-6ac0dd11]:hover{opacity:.9;transform:translateY(-1px)}.blog-title[data-v-6ac0dd11]{color:var(--ac);align-items:center;gap:.6rem;font-size:1.5rem;font-weight:700;display:flex}.blog-back[data-v-6ac0dd11]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.blog-back[data-v-6ac0dd11]:hover{border-color:var(--ac);background:#f9731626}.blog-my-btn[data-v-6ac0dd11]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.blog-my-btn[data-v-6ac0dd11]:hover{border-color:var(--ac);background:#f9731626}.blog-my-btn.active[data-v-6ac0dd11]{color:var(--ac);border-color:var(--ac);background:#f973161a}.blog-tags[data-v-6ac0dd11]{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.blog-tag[data-v-6ac0dd11]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:20px;padding:.35rem .8rem;font-size:.75rem;font-weight:500;transition:all .2s}.blog-tag[data-v-6ac0dd11]:hover{border-color:var(--ac);color:var(--ac)}.blog-tag.active[data-v-6ac0dd11]{background:var(--ac);border-color:var(--ac);color:#fff}.blog-loading[data-v-6ac0dd11]{color:var(--td);justify-content:center;align-items:center;gap:.6rem;padding:3rem 0;font-size:.85rem;display:flex}.blog-empty[data-v-6ac0dd11]{color:var(--td);flex-direction:column;align-items:center;gap:.8rem;padding:4rem 0;display:flex}.blog-empty p[data-v-6ac0dd11]{font-size:.9rem}.blog-grid[data-v-6ac0dd11]{grid-template-columns:repeat(2,1fr);gap:1.2rem;display:grid}@media (width<=768px){.blog-grid[data-v-6ac0dd11]{grid-template-columns:1fr}}.blog-card[data-v-6ac0dd11]{background:var(--card);border:1px solid var(--bd);cursor:pointer;border-radius:12px;transition:all .3s;overflow:hidden}.blog-card[data-v-6ac0dd11]:hover{border-color:var(--ac);transform:translateY(-3px);box-shadow:0 8px 30px #f9731626}.blog-card__cover[data-v-6ac0dd11]{height:180px;position:relative;overflow:hidden}.blog-card__cover img[data-v-6ac0dd11]{object-fit:cover;width:100%;height:100%;transition:transform .3s}.blog-card:hover .blog-card__cover img[data-v-6ac0dd11]{transform:scale(1.05)}.blog-card__cover--placeholder[data-v-6ac0dd11]{background:linear-gradient(135deg,#f9731633,#f973160d);justify-content:center;align-items:center;display:flex}.blog-card__gradient[data-v-6ac0dd11]{background:linear-gradient(135deg,#f9731626,#f9731605);position:absolute;inset:0}.blog-card__placeholder-icon[data-v-6ac0dd11]{z-index:1;color:var(--ac);opacity:.5;position:relative}.blog-card__body[data-v-6ac0dd11]{flex-direction:column;gap:.5rem;padding:1rem 1.2rem;display:flex}.blog-card__title[data-v-6ac0dd11]{color:var(--t);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.05rem;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.blog-card__summary[data-v-6ac0dd11]{color:var(--td);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8rem;line-height:1.5;display:-webkit-box;overflow:hidden}.blog-card__meta[data-v-6ac0dd11]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem;display:flex}.blog-card__tags[data-v-6ac0dd11]{flex-wrap:wrap;gap:.3rem;display:flex}.blog-card__tag[data-v-6ac0dd11]{color:var(--ac);background:#f973161a;border-radius:10px;padding:2px 8px;font-size:.65rem;font-weight:500}.blog-card__info[data-v-6ac0dd11]{align-items:center;gap:.8rem;display:flex}.blog-card__date[data-v-6ac0dd11],.blog-card__views[data-v-6ac0dd11],.blog-card__author[data-v-6ac0dd11]{color:var(--td);align-items:center;gap:.25rem;font-size:.7rem;display:flex}.blog-card__author[data-v-6ac0dd11]{color:var(--ac);font-weight:500}.blog-card__author-avatar[data-v-6ac0dd11]{object-fit:cover;border-radius:50%;width:18px;height:18px}.blog-card__more[data-v-6ac0dd11]{color:var(--ac);margin-top:.2rem;font-size:.75rem;font-weight:600}.blog-pagination[data-v-6ac0dd11]{justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding:1rem 0;display:flex}.blog-page-btn[data-v-6ac0dd11]{border:1px solid var(--bd);background:var(--ctrl-bg);width:36px;height:36px;color:var(--ctrl-t);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.blog-page-btn[data-v-6ac0dd11]:hover:not(:disabled){border-color:var(--ac);color:var(--ac);background:#f9731626}.blog-page-btn[data-v-6ac0dd11]:disabled{opacity:.4;cursor:not-allowed}.blog-page-info[data-v-6ac0dd11]{color:var(--td);text-align:center;min-width:60px;font-size:.8rem}.spin[data-v-6ac0dd11]{animation:1s linear infinite spin-6ac0dd11}@keyframes spin-6ac0dd11{to{transform:rotate(360deg)}}.article-detail[data-v-f67063e2]{max-width:800px;margin:0 auto;padding:2rem 0}.article-loading[data-v-f67063e2],.article-error[data-v-f67063e2]{color:var(--td);flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:4rem 0;display:flex}.article-error p[data-v-f67063e2]{margin-bottom:.5rem;font-size:.9rem}.article-nav[data-v-f67063e2]{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.article-back-btn[data-v-f67063e2]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.article-back-btn[data-v-f67063e2]:hover{border-color:var(--ac);color:var(--ac);background:#f9731626}.article-edit-btn[data-v-f67063e2]{border:1px solid var(--ac);background:var(--ac);color:#fff;cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.article-edit-btn[data-v-f67063e2]:hover{opacity:.9;transform:translateY(-1px)}.article-cover[data-v-f67063e2]{border:1px solid var(--bd);border-radius:12px;width:100%;max-height:400px;margin-bottom:1.5rem;overflow:hidden}.article-cover img[data-v-f67063e2]{object-fit:cover;width:100%;height:100%}.article-content[data-v-f67063e2]{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:2rem}.article-title[data-v-f67063e2]{color:var(--t);margin-bottom:1rem;font-size:1.8rem;font-weight:800;line-height:1.3}.article-meta[data-v-f67063e2]{align-items:center;gap:1.2rem;margin-bottom:1rem;display:flex}.article-meta-item[data-v-f67063e2]{color:var(--td);align-items:center;gap:.35rem;font-size:.8rem;display:flex}.article-meta-item svg[data-v-f67063e2]{color:var(--ac)}.article-author-avatar[data-v-f67063e2]{object-fit:cover;border-radius:50%;width:22px;height:22px}.article-tags[data-v-f67063e2]{border-bottom:1px solid var(--bd);flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.article-tag[data-v-f67063e2]{color:var(--ac);background:#f973161a;border-radius:12px;align-items:center;gap:.25rem;padding:3px 10px;font-size:.7rem;font-weight:500;display:inline-flex}.article-body[data-v-f67063e2]{color:var(--t);word-break:break-word;font-size:.95rem;line-height:1.35}.article-body[data-v-f67063e2] h1,.article-body[data-v-f67063e2] h2,.article-body[data-v-f67063e2] h3{color:var(--t);margin:.6rem 0 .3rem;line-height:1.25}.article-body[data-v-f67063e2] h1{font-size:1.5rem}.article-body[data-v-f67063e2] h2{font-size:1.3rem}.article-body[data-v-f67063e2] h3{font-size:1.1rem}.article-body[data-v-f67063e2] strong{color:var(--t);font-weight:700}.article-body[data-v-f67063e2] em{font-style:italic}.article-body[data-v-f67063e2] code{color:var(--ac);background:#f973161a;border-radius:4px;padding:2px 6px;font-family:Courier New,monospace;font-size:.85rem}.article-body[data-v-f67063e2] a{color:var(--ac);border-bottom:1px solid #f973164d;text-decoration:none;transition:border-color .2s}.article-body[data-v-f67063e2] a:hover{border-color:var(--ac)}.article-body[data-v-f67063e2] .code-block{background:var(--bg-secondary);border:1px solid var(--bd);border-radius:8px;margin:.4rem 0;padding:.6rem .8rem;font-size:.82rem;line-height:1.4;overflow-x:auto}.article-body[data-v-f67063e2] .code-block code{color:var(--t);background:0 0;padding:0;font-family:SF Mono,Fira Code,Courier New,monospace;font-size:.82rem}.article-body[data-v-f67063e2] .inline-code{color:var(--ac);background:#f973161a;border-radius:4px;padding:2px 6px;font-family:Courier New,monospace;font-size:.85rem}.article-body[data-v-f67063e2] .article-table{border-collapse:collapse;width:100%;margin:.4rem 0;font-size:.82rem}.article-body[data-v-f67063e2] .article-table th,.article-body[data-v-f67063e2] .article-table td{border:1px solid var(--bd);text-align:left;padding:.35rem .6rem}.article-body[data-v-f67063e2] .article-table th{color:var(--t);background:#f973161a;font-weight:600}.article-body[data-v-f67063e2] .article-table td{color:var(--t)}.article-body[data-v-f67063e2] .article-img{border:1px solid var(--bd);border-radius:10px;max-width:100%;margin:.4rem 0}.article-body[data-v-f67063e2] blockquote{border-left:3px solid var(--ac);color:var(--td);background:#f973160d;border-radius:0 8px 8px 0;margin:.4rem 0;padding:.3rem .8rem}.article-body[data-v-f67063e2] ul,.article-body[data-v-f67063e2] ol{margin:.2rem 0;padding-left:1.2rem}.article-body[data-v-f67063e2] li{color:var(--t);margin:.15rem 0}.article-body[data-v-f67063e2] .article-hr{border:none;border-top:1px solid var(--bd);margin:.8rem 0}.spin[data-v-f67063e2]{animation:1s linear infinite spin-f67063e2}@keyframes spin-f67063e2{to{transform:rotate(360deg)}}@media (width<=640px){.article-content[data-v-f67063e2]{padding:1.2rem}.article-title[data-v-f67063e2]{font-size:1.4rem}.article-meta[data-v-f67063e2]{flex-direction:column;align-items:flex-start;gap:.4rem}}.editor-page[data-v-c51f5bb9]{background:var(--bg);min-height:100vh;padding-bottom:4rem}.editor-nav[data-v-c51f5bb9]{background:var(--nav-bg);border-bottom:1px solid var(--bd);z-index:10;align-items:center;gap:1rem;padding:1rem 2rem;display:flex;position:sticky;top:0}.editor-back[data-v-c51f5bb9]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:.85rem;transition:all .2s;display:flex}.editor-back[data-v-c51f5bb9]:hover{color:var(--t);background:#ffffff0f}.editor-nav-title[data-v-c51f5bb9]{color:var(--tc);font-size:.9rem;font-weight:600}.editor-container[data-v-c51f5bb9]{flex-direction:column;gap:1rem;max-width:800px;margin:0 auto;padding:2rem 1.5rem;display:flex}.editor-title-input[data-v-c51f5bb9]{color:var(--tc);border:none;border-bottom:2px solid var(--bd);background:0 0;outline:none;padding:.5rem 0;font-size:1.8rem;font-weight:700;transition:border-color .2s}.editor-title-input[data-v-c51f5bb9]:focus{border-color:var(--ac)}.editor-title-input[data-v-c51f5bb9]::placeholder{color:var(--td)}.editor-summary-input[data-v-c51f5bb9]{border:1px solid var(--bd);color:var(--t);resize:vertical;background:0 0;border-radius:8px;outline:none;padding:.6rem .8rem;font-size:.9rem;transition:border-color .2s}.editor-summary-input[data-v-c51f5bb9]:focus{border-color:var(--ac)}.editor-summary-input[data-v-c51f5bb9]::placeholder{color:var(--td)}.editor-field[data-v-c51f5bb9]{background:var(--card);border:1px solid var(--bd);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .8rem;display:flex}.editor-field svg[data-v-c51f5bb9]{color:var(--td);flex-shrink:0}.editor-cover-input[data-v-c51f5bb9],.editor-tags-input[data-v-c51f5bb9]{color:var(--t);background:0 0;border:none;outline:none;flex:1;font-size:.85rem}.editor-cover-input[data-v-c51f5bb9]::placeholder,.editor-tags-input[data-v-c51f5bb9]::placeholder{color:var(--td)}.editor-upload-btn[data-v-c51f5bb9]{width:32px;height:32px;color:var(--ac);cursor:pointer;background:#f9731626;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.editor-upload-btn[data-v-c51f5bb9]:hover{background:#f9731640}.editor-cover-preview[data-v-c51f5bb9]{border-radius:8px;max-height:200px;overflow:hidden}.editor-cover-preview img[data-v-c51f5bb9]{object-fit:cover;width:100%;height:100%}.editor-tags-preview[data-v-c51f5bb9]{flex-wrap:wrap;gap:.4rem;display:flex}.editor-tag-chip[data-v-c51f5bb9]{color:var(--ac);background:#f9731626;border-radius:12px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.75rem;display:inline-flex}.editor-tag-remove[data-v-c51f5bb9]{color:var(--ac);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;line-height:1}.editor-content-header[data-v-c51f5bb9]{border-bottom:1px solid var(--bd);align-items:center;gap:.5rem;padding-bottom:.5rem;display:flex}.editor-tab[data-v-c51f5bb9]{color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.8rem;transition:all .2s;display:flex}.editor-tab.active[data-v-c51f5bb9]{color:var(--ac);background:#f9731626}.editor-tab[data-v-c51f5bb9]:hover{background:#ffffff0f}.editor-toolbar[data-v-c51f5bb9]{background:var(--card);border:1px solid var(--bd);border-radius:8px;flex-wrap:wrap;align-items:center;gap:2px;padding:.5rem;display:flex}.toolbar-btn[data-v-c51f5bb9]{width:32px;height:32px;color:var(--td);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.toolbar-btn[data-v-c51f5bb9]:hover{color:var(--ac);background:#f9731626}.toolbar-btn[data-v-c51f5bb9]:active{transform:scale(.9)}.toolbar-divider[data-v-c51f5bb9]{background:var(--bd);width:1px;height:20px;margin:0 4px}.editor-img-btn[data-v-c51f5bb9]{border:1px solid var(--bd);color:var(--td);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.3rem;margin-left:auto;padding:.3rem .6rem;font-size:.75rem;transition:all .2s;display:flex}.editor-img-btn[data-v-c51f5bb9]:hover{border-color:var(--ac);color:var(--ac)}.editor-autosave[data-v-c51f5bb9]{color:var(--g);align-items:center;gap:.3rem;margin-left:auto;font-size:.7rem;display:flex}.editor-content-input[data-v-c51f5bb9]{background:var(--card);border:1px solid var(--bd);color:var(--t);resize:vertical;border-radius:10px;outline:none;min-height:400px;padding:1rem;font-family:SF Mono,Fira Code,monospace;font-size:.95rem;line-height:1.7;transition:border-color .2s}.editor-content-input[data-v-c51f5bb9]:focus{border-color:var(--ac)}.editor-content-input[data-v-c51f5bb9]::placeholder{color:var(--td)}.editor-preview[data-v-c51f5bb9]{background:var(--card);border:1px solid var(--bd);min-height:400px;color:var(--t);border-radius:10px;padding:1rem;font-size:.95rem;line-height:1.7}.editor-preview[data-v-c51f5bb9] h1{color:var(--tc);margin:1rem 0 .5rem;font-size:1.5rem}.editor-preview[data-v-c51f5bb9] h2{color:var(--tc);margin:.8rem 0 .4rem;font-size:1.3rem}.editor-preview[data-v-c51f5bb9] h3{color:var(--tc);margin:.6rem 0 .3rem;font-size:1.1rem}.editor-preview[data-v-c51f5bb9] code{background:#f973161a;border-radius:4px;padding:.1rem .3rem;font-size:.85em}.editor-preview[data-v-c51f5bb9] a{color:var(--ac)}.editor-actions[data-v-c51f5bb9]{justify-content:flex-end;gap:.8rem;padding-top:1rem;display:flex}.editor-btn[data-v-c51f5bb9]{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.6rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.editor-btn--publish[data-v-c51f5bb9]{background:var(--ac);color:#fff}.editor-btn--publish[data-v-c51f5bb9]:hover:not(:disabled){opacity:.9}.editor-btn--publish[data-v-c51f5bb9]:disabled,.editor-btn--save[data-v-c51f5bb9]:disabled{opacity:.5;cursor:not-allowed}.editor-btn--save[data-v-c51f5bb9]{color:#fff;cursor:pointer;background:#3b82f6;border:1px solid #3b82f6;border-radius:10px;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.editor-btn--save[data-v-c51f5bb9]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.editor-error[data-v-c51f5bb9]{color:#ef4444;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:.5rem;padding:.8rem 1rem;font-size:.85rem;display:flex}.editor-draft-overlay[data-v-c51f5bb9]{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.editor-draft-dialog[data-v-c51f5bb9]{background:var(--card);border:1px solid var(--bd);text-align:center;border-radius:14px;width:90%;max-width:380px;padding:2rem;animation:.2s dialogIn-c51f5bb9}@keyframes dialogIn-c51f5bb9{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.editor-draft-icon[data-v-c51f5bb9]{color:var(--y);margin-bottom:.8rem}.editor-draft-title[data-v-c51f5bb9]{color:var(--t);margin-bottom:.5rem;font-size:1rem;font-weight:700}.editor-draft-msg[data-v-c51f5bb9]{color:var(--td);margin-bottom:1.5rem;font-size:.8rem;line-height:1.5}.editor-draft-actions[data-v-c51f5bb9]{justify-content:center;gap:.5rem;display:flex}.editor-draft-btn[data-v-c51f5bb9]{border:1px solid var(--bd);cursor:pointer;border-radius:8px;align-items:center;gap:.3rem;padding:.5rem 1.2rem;font-size:.8rem;font-weight:600;transition:all .2s;display:inline-flex}.editor-draft-btn--cancel[data-v-c51f5bb9]{background:var(--ctrl-bg);color:var(--td)}.editor-draft-btn--cancel[data-v-c51f5bb9]:hover{background:#ffffff1a}.editor-draft-btn--save[data-v-c51f5bb9]{background:var(--ac);border-color:var(--ac);color:#fff}.editor-draft-btn--save[data-v-c51f5bb9]:hover{opacity:.9}@media (width<=640px){.editor-container[data-v-c51f5bb9]{padding:1rem}.editor-title-input[data-v-c51f5bb9]{font-size:1.4rem}.editor-nav[data-v-c51f5bb9]{padding:.8rem 1rem}}.my-articles__header[data-v-f27c2950]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.my-articles__title[data-v-f27c2950]{color:var(--ac);align-items:center;gap:.6rem;font-size:1.5rem;font-weight:700;display:flex}.my-articles__actions[data-v-f27c2950]{gap:.5rem;display:flex}.my-articles__write-btn[data-v-f27c2950]{border:1px solid var(--ac);background:var(--ac);color:#fff;cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.my-articles__write-btn[data-v-f27c2950]:hover{opacity:.9;transform:translateY(-1px)}.my-articles__back[data-v-f27c2950]{border:1px solid var(--bd);background:var(--ctrl-bg);color:var(--ctrl-t);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.my-articles__back[data-v-f27c2950]:hover{border-color:var(--ac);color:var(--ac);background:#f9731626}.my-articles__loading[data-v-f27c2950]{color:var(--td);justify-content:center;align-items:center;gap:.6rem;padding:3rem 0;font-size:.85rem;display:flex}.my-articles__empty[data-v-f27c2950]{color:var(--td);flex-direction:column;align-items:center;gap:.8rem;padding:4rem 0;display:flex}.my-articles__empty p[data-v-f27c2950]{font-size:.9rem}.my-articles[data-v-f27c2950]{max-width:1200px;margin:0 auto;padding:1.5rem}.my-articles__batch-bar[data-v-f27c2950]{align-items:center;gap:1rem;padding:.5rem 0;display:flex}.my-articles__batch-checkbox[data-v-f27c2950]{cursor:pointer;color:var(--td);-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.85rem;display:flex;position:relative}.my-articles__batch-checkbox input[type=checkbox][data-v-f27c2950]{opacity:0;width:0;height:0;position:absolute}.my-articles__batch-checkbox-custom[data-v-f27c2950]{border:2px solid var(--bd);background:var(--ctrl-bg);border-radius:5px;justify-content:center;align-items:center;width:18px;height:18px;transition:all .2s;display:flex}.my-articles__batch-checkbox input:checked+.my-articles__batch-checkbox-custom[data-v-f27c2950]{background:var(--ac);border-color:var(--ac)}.my-articles__batch-checkbox input:checked+.my-articles__batch-checkbox-custom[data-v-f27c2950]:after{content:"✓";color:#fff;font-size:12px;font-weight:700;line-height:1}.my-articles__batch-checkbox:hover .my-articles__batch-checkbox-custom[data-v-f27c2950]{border-color:var(--ac)}.my-articles__batch-delete[data-v-f27c2950]{border:1px solid var(--r);color:var(--r);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:.3rem;padding:.4rem .8rem;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.my-articles__batch-delete[data-v-f27c2950]:hover:not(:disabled){background:var(--rg)}.my-articles__batch-delete[data-v-f27c2950]:disabled{opacity:.4;cursor:not-allowed}.my-articles__list[data-v-f27c2950]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;display:grid}.my-articles__list .blog-card[data-v-f27c2950]{position:relative}.my-articles__item-checkbox[data-v-f27c2950]{z-index:10;cursor:pointer;opacity:0;align-items:center;transition:opacity .2s;display:flex;position:absolute;top:.6rem;left:.6rem}.my-articles__list .blog-card:hover .my-articles__item-checkbox[data-v-f27c2950]{opacity:1}.my-articles__item-checkbox input[type=checkbox][data-v-f27c2950]{opacity:0;width:0;height:0;position:absolute}.my-articles__item-checkbox-custom[data-v-f27c2950]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000004d;border:2px solid #fff9;border-radius:5px;justify-content:center;align-items:center;width:20px;height:20px;transition:all .2s;display:flex}.my-articles__item-checkbox input:checked+.my-articles__item-checkbox-custom[data-v-f27c2950]{background:var(--ac);border-color:var(--ac)}.my-articles__item-checkbox input:checked+.my-articles__item-checkbox-custom[data-v-f27c2950]:after{content:"✓";color:#fff;font-size:13px;font-weight:700;line-height:1}.my-articles__item-checkbox:hover .my-articles__item-checkbox-custom[data-v-f27c2950]{border-color:#fff}.my-articles__card-actions[data-v-f27c2950]{z-index:10;opacity:0;gap:.3rem;transition:opacity .2s;display:flex;position:absolute;top:.6rem;right:.6rem}.my-articles__list .blog-card:hover .my-articles__card-actions[data-v-f27c2950]{opacity:1}.my-articles__edit-btn[data-v-f27c2950],.my-articles__delete-btn[data-v-f27c2950]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#0000004d;border:1px solid #fff3;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .2s;display:flex}.my-articles__edit-btn[data-v-f27c2950]{color:var(--ac)}.my-articles__edit-btn[data-v-f27c2950]:hover{border-color:var(--ac);background:#f9731666}.my-articles__delete-btn[data-v-f27c2950]{color:var(--r)}.my-articles__delete-btn[data-v-f27c2950]:hover{border-color:var(--r);background:#ef444466}.delete-overlay[data-v-f27c2950]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn-f27c2950;display:flex;position:fixed;inset:0}.delete-dialog[data-v-f27c2950]{background:var(--card);border:1.5px solid var(--bd);text-align:center;border-radius:16px;width:90%;max-width:360px;padding:2rem;animation:.3s slideUp-f27c2950;box-shadow:0 20px 60px #00000080}.delete-dialog__icon[data-v-f27c2950]{color:var(--y);margin-bottom:1rem}.delete-dialog__text[data-v-f27c2950]{color:var(--t);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.delete-dialog__actions[data-v-f27c2950]{justify-content:center;gap:1rem;display:flex}.delete-dialog__btn[data-v-f27c2950]{cursor:pointer;border:none;border-radius:10px;padding:.6rem 1.5rem;font-size:.85rem;font-weight:600;transition:all .2s}.delete-dialog__btn--cancel[data-v-f27c2950]{background:var(--ctrl-bg);color:var(--ctrl-t);border:1px solid var(--bd)}.delete-dialog__btn--cancel[data-v-f27c2950]:hover{background:#ffffff1a}.delete-dialog__btn--confirm[data-v-f27c2950]{background:var(--r);color:#fff}.delete-dialog__btn--confirm[data-v-f27c2950]:hover{opacity:.9;transform:translateY(-1px)}.spin[data-v-f27c2950]{animation:1s linear infinite spin-f27c2950}@keyframes spin-f27c2950{to{transform:rotate(360deg)}}@keyframes fadeIn-f27c2950{0%{opacity:0}to{opacity:1}}@keyframes slideUp-f27c2950{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.my-articles__header[data-v-f27c2950],.my-articles__item[data-v-f27c2950]{flex-direction:column;align-items:flex-start}.my-articles__item-actions[data-v-f27c2950]{align-self:flex-end}}*{box-sizing:border-box;margin:0;padding:0}svg.lucide{vertical-align:middle;flex-shrink:0;display:inline-block}:root{--bg:#0a0e17;--card:#1e293be6;--t:#e5e7eb;--td:#6b7280;--ac:#f97316;--g:#22c55e;--gg:#22c55e66;--y:#eab308;--yg:#eab30866;--r:#ef4444;--rg:#ef444466;--bd:#fff3;--nav-bg:#0a0e17;--ctrl-bg:#ffffff1f;--ctrl-t:#e5e7eb;--text-primary:#e5e7eb;--text-secondary:#9ca3af;--bg-hover:#ffffff1a;--accent:#f97316;--accent-light:#f9731626;--accent-dark:#ea580c;--error-light:#ef444426;--error:#ef4444;--bg-secondary:#1e293b99;--success:#22c55e}[data-theme=light]{--bg:#f0f2f5;--card:#fffffff2;--t:#1f2937;--td:#6b7280;--ac:#2563eb;--g:#16a34a;--gg:#16a34a4d;--y:#ca8a04;--yg:#ca8a044d;--r:#dc2626;--rg:#dc26264d;--bd:#00000026;--nav-bg:#fff;--ctrl-bg:#00000014;--ctrl-t:#374151;--text-primary:#1f2937;--text-secondary:#6b7280;--bg-hover:#0000000f;--accent:#2563eb;--accent-light:#2563eb1a;--accent-dark:#1d4ed8;--error-light:#ef44441a;--error:#dc2626;--bg-secondary:#f5f5f5;--success:#16a34a}html,body{min-height:100vh}body{background:var(--bg);color:var(--t);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;transition:background .4s,color .4s;overflow-x:hidden}.app{flex-direction:column;min-height:100vh;display:flex}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.main{z-index:1;flex:1;padding:1.5rem 0 2rem;position:relative}.main .container{width:100%}.admin-wrapper{max-width:1200px;margin:0 auto;padding:0 1rem}@media (width<=1024px){.container{padding:0 1.5rem}}@media (width<=640px){.container{padding:0 1rem}}.weather-calendar-row{gap:1.2rem;margin-bottom:1.2rem;display:flex}.weather-calendar-row .weather-card{flex:3;margin-bottom:0}.weather-calendar-row .calendar-card{flex:1;margin-bottom:0}@media (width<=768px){.weather-calendar-row{flex-direction:column}.weather-calendar-row .weather-card,.weather-calendar-row .calendar-card{flex:none;width:100%}}.new-sections-row{align-items:stretch;gap:1.2rem;height:635px;margin-bottom:1.2rem;display:flex}.new-sections-row .rss-card,.new-sections-row .skills-card,.new-sections-row .guestbook-card{flex:1;min-width:0;height:100%}@media (width<=1024px){.new-sections-row{flex-wrap:wrap}.new-sections-row .rss-card,.new-sections-row .skills-card,.new-sections-row .guestbook-card{flex:calc(50% - .6rem)}}@media (width<=640px){.new-sections-row{flex-direction:column;height:auto}.new-sections-row .rss-card,.new-sections-row .skills-card,.new-sections-row .guestbook-card{flex:none;width:100%;height:auto;min-height:300px}}.update-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.update-dialog{background:var(--card);border:1.5px solid var(--bd);text-align:center;border-radius:16px;width:90%;max-width:400px;padding:2rem;animation:.3s slideUp;box-shadow:0 20px 60px #00000080}.update-dialog__icon{margin-bottom:1rem;font-size:3rem}.update-dialog__title{color:var(--t);margin-bottom:.5rem;font-size:1.2rem;font-weight:700}.update-dialog__message{color:var(--td);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.update-dialog__actions{justify-content:center;gap:1rem;display:flex}.update-dialog__btn{cursor:pointer;border:none;border-radius:10px;padding:.6rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s}.update-dialog__btn--later{background:var(--ctrl-bg);color:var(--ctrl-t)}.update-dialog__btn--later:hover{background:#fff3}.update-dialog__btn--refresh{background:var(--ac);color:#fff}.update-dialog__btn--refresh:hover{opacity:.9;transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
