.confirm-mask[data-v-02c1d689]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#14120e73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.confirm-box[data-v-02c1d689]{width:100%;max-width:400px;padding:28px 24px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;animation:confirmIn-02c1d689 .25s cubic-bezier(.16,1,.3,1)}@keyframes confirmIn-02c1d689{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-icon[data-v-02c1d689]{width:48px;height:48px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.confirm-icon.danger[data-v-02c1d689]{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.confirm-title[data-v-02c1d689]{font-size:18px;font-weight:700;margin-bottom:8px}.confirm-message[data-v-02c1d689]{font-size:14px;color:var(--ink-2);line-height:1.7;margin-bottom:24px;word-break:break-word}.confirm-actions[data-v-02c1d689]{display:flex;gap:12px;width:100%}.confirm-actions .btn[data-v-02c1d689]{flex:1}.confirm-fade-enter-active[data-v-02c1d689],.confirm-fade-leave-active[data-v-02c1d689]{transition:opacity .2s ease}.confirm-fade-enter-from[data-v-02c1d689],.confirm-fade-leave-to[data-v-02c1d689]{opacity:0}@media (max-width: 480px){.confirm-box[data-v-02c1d689]{padding:24px 20px 16px}.confirm-actions[data-v-02c1d689]{flex-direction:column-reverse}.confirm-actions .btn[data-v-02c1d689]{width:100%}}.app-shell{min-height:100vh}:root{--accent: #C8553D;--accent-hover: #B04730;--accent-soft: #F3DDD4;--gold: #B8860B;--gold-svip: #8B5A2B;--success: #4A7C59;--danger: #B33A3A;--info: #3D6E8B;--bg: #F6F2EB;--bg-grain: #F1ECE3;--surface: #FFFFFF;--surface-2: #FAF7F2;--surface-hover: #F3EEE6;--border: #E6DED2;--border-strong: #D6CCBC;--ink: #1C1B19;--ink-2: #4A4640;--ink-3: #8A8378;--ink-4: #B5AC9E;--tooltip-bg: #2A2722;--tooltip-text: #F6F2EB;--tooltip-border: #3D3933;--shadow-sm: 0 1px 2px rgba(28, 27, 25, .05);--shadow: 0 4px 16px -4px rgba(28, 27, 25, .08), 0 2px 6px -2px rgba(28, 27, 25, .05);--shadow-lg: 0 16px 48px -12px rgba(28, 27, 25, .16), 0 4px 12px -4px rgba(28, 27, 25, .08);--radius-sm: 8px;--radius: 12px;--radius-lg: 18px;--radius-full: 999px;--maxw: 1180px;--font-display: "Fraunces", "Noto Serif SC", Georgia, serif;--font-ui: "Sora", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif}[data-theme=dark]{--accent: #E8694E;--accent-hover: #F07A5F;--accent-soft: #3A2520;--gold: #D4AF37;--gold-svip: #C99A4A;--bg: #131210;--bg-grain: #161412;--surface: #1E1C18;--surface-2: #25221D;--surface-hover: #2C2823;--border: #34302A;--border-strong: #44403A;--ink: #F0EBE2;--ink-2: #C4BCAE;--ink-3: #8E867A;--ink-4: #5E5850;--tooltip-bg: #F0EBE2;--tooltip-text: #1E1C18;--tooltip-border: #D6CCBC;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 4px 16px -4px rgba(0, 0, 0, .4), 0 2px 6px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 16px 48px -12px rgba(0, 0, 0, .6), 0 4px 12px -4px rgba(0, 0, 0, .4)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-ui);background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility;transition:background-color .3s ease,color .3s ease;background-image:radial-gradient(circle at 20% 0%,var(--accent-soft) 0%,transparent 35%),radial-gradient(circle at 90% 10%,rgba(184,134,11,.05) 0%,transparent 30%);background-attachment:fixed;min-height:100vh;overscroll-behavior-y:none}button,a,input,textarea,select,[role=button]{touch-action:manipulation}[data-theme=dark] body{background-image:radial-gradient(circle at 20% 0%,rgba(232,105,78,.08) 0%,transparent 35%),radial-gradient(circle at 90% 10%,rgba(212,175,55,.05) 0%,transparent 30%)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}img{max-width:100%;display:block}ul,ol{list-style:none}.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}.font-display{font-family:var(--font-display)}.text-accent{color:var(--accent)}.text-muted{color:var(--ink-3)}.text-gold{color:var(--gold)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--ink-3)}::selection{background:var(--accent);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-full);font-size:14px;font-weight:600;transition:all .2s ease;white-space:nowrap;border:1px solid transparent}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 4px 12px -2px #c8553d66}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 16px -2px #c8553d80}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--border)}.btn-ghost:hover{background:var(--surface-hover);border-color:var(--border-strong)}.btn-text{padding:6px 10px;color:var(--ink-2)}.btn-text:hover{color:var(--accent);background:var(--accent-soft)}.btn-sm{padding:6px 14px;font-size:13px}.btn-lg{padding:14px 28px;font-size:15px}.btn:active:not(:disabled){transform:translateY(0) scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 88%,#000)}.input:hover,.textarea:hover,.select:hover{border-color:var(--border-strong)}.field{display:flex;flex-direction:column;gap:8px}.field-label{font-size:13px;font-weight:600;color:var(--ink-2)}.input,.textarea,.select{width:100%;padding:12px 16px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease;outline:none}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.textarea{resize:vertical;min-height:120px;line-height:1.7}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-full);font-size:12px;font-weight:600;line-height:1.6}.badge-vip,.badge-svip{padding:1px 7px;font-size:11px;line-height:1.5;font-weight:600;background:transparent;border:1px solid currentColor}.badge-vip{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 55%,transparent)}.badge-svip{color:var(--gold-svip);border-color:color-mix(in srgb,var(--gold-svip) 55%,transparent)}.badge-admin{background:var(--accent);color:#fff}.name-vip{color:#d32f2f!important;font-weight:600}[data-theme=dark] .name-vip{color:#ff5252!important}.name-svip{background:linear-gradient(90deg,#ff4d4f,#ff7a45,#ffc53d,#73d13d,#36cfc9,#9254de,#ff4d4f);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700;animation:svipNameFlow 4s linear infinite}.name-svip .badge{-webkit-text-fill-color:currentColor;background-clip:border-box}@keyframes svipNameFlow{0%{background-position:0% center}to{background-position:200% center}}@media (prefers-reduced-motion: reduce){.name-svip{animation:none}}.badge-mod{background:var(--info);color:#fff}.badge-soft{background:var(--accent-soft);color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all .25s ease}.card-hover:hover{box-shadow:var(--shadow);transform:translateY(-2px);border-color:var(--border-strong)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in-up{animation:fadeInUp .5s ease both}.fade-in{animation:fadeIn .4s ease both}.route-fade-enter-active,.route-fade-leave-active{transition:opacity .25s ease,transform .25s ease}.route-fade-enter-from{opacity:0;transform:translateY(8px)}.route-fade-leave-to{opacity:0}.colabbs-toast{position:fixed;top:28px;left:50%;transform:translate(-50%) translateY(-14px) scale(.96);display:flex;align-items:center;gap:10px;max-width:min(520px,calc(100vw - 32px));padding:12px 20px;border-radius:var(--radius-lg);font-size:14px;font-weight:500;line-height:1.5;z-index:9999;box-shadow:var(--shadow-lg);background:var(--ink);color:var(--bg);overflow:hidden;border:1px solid var(--border-strong);opacity:0;animation:toastIn .34s cubic-bezier(.16,1,.3,1) forwards}.colabbs-toast.toast-success{background:var(--success);color:#fff}.colabbs-toast.toast-error{background:var(--danger);color:#fff}.colabbs-toast.toast-info{background:var(--ink);color:var(--bg)}.colabbs-toast .toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#fff3}.colabbs-toast.toast-info .toast-icon{background:color-mix(in srgb,var(--bg) 18%,transparent)}.colabbs-toast .toast-msg{word-break:break-word}.colabbs-toast .toast-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;transform-origin:left;background:#ffffff73;animation:toastBar 2.4s linear forwards}.colabbs-toast.hide{animation:toastOut .3s cubic-bezier(.4,0,1,1) forwards}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-14px) scale(.94)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes toastOut{to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.96)}}@keyframes toastBar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.skel-bar,.skel-title,.skel-excerpt,.skel-tag,.skel-avatar,.skel-avatar-sm,.uhc-skel-bar,.uhc-skel-circle{background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-2) 40%,color-mix(in srgb,var(--ink-3) 20%,var(--surface-2)) 50%,var(--surface-2) 60%,var(--surface-2) 100%) 0 0 / 220% 100% no-repeat!important;animation:skel-shimmer 1.5s linear infinite!important}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.empty-state{animation:emptyIn .5s cubic-bezier(.16,1,.3,1) both}@keyframes emptyIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.show-mobile-only{display:none}.drawer-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;background:#14120e80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.drawer-mask.open{opacity:1;visibility:visible}@media (max-width: 768px){.container{padding:0 14px}.hide-mobile{display:none!important}.show-mobile-only{display:flex}.btn{padding:12px 20px;font-size:14px}.btn-sm{padding:8px 14px;font-size:13px}.btn-lg{padding:14px 24px;width:100%}.input,.textarea,.select{padding:13px 14px;font-size:15px}.card{border-radius:var(--radius)}.hero{padding:32px 0 28px}.hero-title{font-size:30px!important}.hero-desc{font-size:14px}.hero-actions{gap:10px}.hero-actions .btn{flex:1}.hero-stats{gap:14px}.hs-item strong{font-size:20px}.hs-divider{height:28px}}@media (max-width: 900px) and (min-width: 769px){.hide-tablet{display:none!important}}@media (max-width: 480px){.container{padding:0 12px}.hero-title{font-size:26px!important}.hero-stats{gap:10px}.hs-item strong{font-size:18px}.hs-item span{font-size:10px}.hs-divider{display:none}}@supports (-webkit-touch-callout: none){.input,.textarea,.select{font-size:16px}}@media (max-width: 640px){.modal-mask{padding:0;align-items:stretch}.modal-box{max-width:100%!important;width:100%!important;max-height:100vh;height:100vh;border-radius:0;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{transform:translateY(100%);opacity:.5}to{transform:translateY(0);opacity:1}}.modal-header{position:sticky;top:0;z-index:10;background:var(--surface);padding:14px 16px}.modal-title{font-size:17px}.modal-body{padding:16px}.modal-footer{position:sticky;bottom:0;background:var(--surface);padding:12px 16px;border-top:1px solid var(--border)}.modal-footer .btn{flex:1}}@media (max-width: 768px){.table-mobile .thead{display:none}.table-mobile .trow{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-top:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;background:var(--surface-2)}.table-mobile .td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:2px 0;font-size:13px}.table-mobile .td:before{content:attr(data-label);color:var(--ink-3);font-size:12px;font-weight:500;flex-shrink:0}.table-mobile .td-actions{justify-content:flex-end;margin-top:4px}.table-mobile .td-actions:before{display:none}.table-mobile .col-id{display:none}}@media (max-width: 768px){::-webkit-scrollbar{width:0;height:0}}.header,.mobile-drawer .md-head,.mobile-drawer{padding-top:env(safe-area-inset-top,0)}.mobile-drawer .md-head{padding-top:16px}.mobile-drawer .md-footer{padding-bottom:env(safe-area-inset-bottom,0)}@media (max-width: 640px){.modal-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom,0))}}.footer{padding-bottom:calc(32px + env(safe-area-inset-bottom,0))}@media (max-width: 768px){.container{padding-left:max(14px,env(safe-area-inset-left,0));padding-right:max(14px,env(safe-area-inset-right,0))}}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.input:focus-visible,.textarea:focus-visible,.select:focus-visible,.ci-textarea:focus-visible,.search-input:focus-visible{outline:none}.btn:focus-visible,.nav-link:focus-visible,.cat-item:focus-visible,.menu-item:focus-visible,.md-item:focus-visible,.tab-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.fade-in,.fade-in-up{animation:none!important;opacity:1!important;transform:none!important}}.cv-auto{content-visibility:auto;contain-intrinsic-size:120px}img{image-rendering:-webkit-optimize-contrast}@media print{.header,.footer,.actions,.btn,.toolbar,.pagination,.comment-input,.modal-mask,.mobile-drawer,.drawer-mask,.auth-modal,.post-editor,.back-btn,.pa-actions,.cm-actions{display:none!important}body{background:#fff!important;color:#000!important}.card{box-shadow:none!important;border:1px solid #ccc!important}.container{max-width:100%!important}}pre::selection,code::selection{background:var(--accent);color:#fff}a img{border:0}.post-content,.cm-content,.sb-content,.pc-excerpt,.sc-desc{overflow-wrap:break-word;word-wrap:break-word}
