:root{--primary:#5b6cff;--primary-dark:#4553e8;--primary-light:#8b94ff;--primary-bg:#eef0ff;--primary-gradient:linear-gradient(135deg,#6472ff,#4a58f0);--text:#1c2333;--text-secondary:#46506b;--muted:#7c86a2;--muted-light:#b9c1d6;--bg:#edf0f8;--bg-deep:#e4e9f4;--card-bg:rgba(255,255,255,.84);--card-bg-solid:#ffffff;--border:rgba(100,115,160,.18);--border-light:rgba(100,115,160,.10);--success:#16a34a;--success-bg:#e8f7ee;--danger:#e5484d;--danger-bg:#fdebec;--warning:#d97706;--warning-bg:#fdf3e1;--info:#3b82f6;--serif:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;--sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(30,40,80,.05);--shadow:0 4px 16px rgba(50,65,120,.08);--shadow-md:0 10px 30px rgba(50,65,120,.12);--shadow-lg:0 20px 50px rgba(40,55,110,.16);--space-xs:4px;--space-sm:8px;--space:16px;--space-lg:24px;--space-xl:32px;--transition:all .2s cubic-bezier(.4,0,.2,1);--transition-slow:all .35s cubic-bezier(.4,0,.2,1);--header-height:60px}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden;overscroll-behavior-x:none}@supports (overflow-x:clip){html,body{overflow-x:clip}}body{font-family:var(--sans);font-size:15px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;position:relative}body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(560px 420px at 12% -4%,rgba(99,110,255,.20),transparent 65%),radial-gradient(640px 480px at 90% 6%,rgba(168,120,255,.16),transparent 65%),radial-gradient(760px 560px at 50% 112%,rgba(255,142,150,.13),transparent 65%)}a{color:var(--primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--primary-dark)}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-weight:800;line-height:1.3;color:var(--text);font-family:var(--sans);letter-spacing:-.2px}h1{font-size:24px}h2{font-size:20px}h3{font-size:17px}p{margin-bottom:var(--space-sm)}ul,ol{padding-left:20px;margin-bottom:var(--space-sm)}li{margin-bottom:4px}code{background:var(--border-light);padding:2px 6px;border-radius:4px;font-size:13px;font-family:'SF Mono',Consolas,monospace}.container{max-width:1100px;margin:0 auto;padding:0 var(--space)}main.container{padding-top:var(--space-lg);padding-bottom:var(--space-xl);min-height:calc(100vh - var(--header-height) - 60px)}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.62);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--border-light);box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 4px 20px rgba(50,65,120,.06);height:var(--header-height)}.header-inner{display:flex;align-items:center;gap:var(--space);height:var(--header-height);max-width:1100px;margin:0 auto;padding:0 var(--space)}.logo{font-family:var(--sans);font-size:20px;font-weight:800;color:var(--text);white-space:nowrap;display:flex;align-items:center;gap:9px;flex-shrink:0;letter-spacing:-.2px;transition:color .2s}.logo:hover{color:var(--primary)}.logo-img img{height:34px;width:auto;max-width:220px;object-fit:contain;display:block}.search-form{flex:1;max-width:340px;position:relative}.search-form input{width:100%;padding:9px 14px 9px 36px;border:1px solid var(--border-light);border-radius:var(--radius-full);font-size:14px;background:rgba(255,255,255,.55);transition:var(--transition);outline:none;color:var(--text)}.search-form input::placeholder{color:var(--muted)}.search-form input:focus{background:#fff;border-color:var(--primary-light);box-shadow:0 0 0 3px rgba(91,108,255,.14)}.search-form::before{content:'';position:absolute;left:13px;top:50%;transform:translateY(-50%);width:15px;height:15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238d877b' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat center/contain;opacity:.9;pointer-events:none}.nav{display:flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0}.nav a{padding:8px 11px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--text-secondary);white-space:nowrap;transition:var(--transition);position:relative}.nav a:hover{background:var(--primary-bg);color:var(--primary)}.nav a.nav-post{display:inline-flex;align-items:center;gap:5px;padding:7px 16px;background:var(--primary-gradient);color:#fff;font-weight:600;font-size:13px;letter-spacing:.3px;border-radius:var(--radius-full);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 3px 12px rgba(91,108,255,.32);margin-left:4px}.nav a.nav-post:hover{background:var(--primary-dark);color:#fff;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 5px 16px rgba(91,108,255,.4)}.nav a.nav-post:active{transform:translateY(0)}.nav .hi{display:flex;align-items:center;gap:4px;font-weight:600;color:var(--text)}.nav .hi:hover{color:var(--primary)}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:var(--danger);color:#fff;font-size:11px;font-weight:700;border-radius:var(--radius-full);margin-left:2px}.nav-pulse::after{content:'';position:absolute;top:4px;right:4px;width:8px;height:8px;background:var(--danger);border-radius:50%;animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.card{background:var(--card-bg);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.7);border:1px solid var(--border-light);transition:var(--transition)}.card:hover{box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.7)}.card.empty{text-align:center;padding:var(--space-xl);color:var(--muted)}.card.narrow{max-width:520px;margin-left:auto;margin-right:auto}.section-title{font-family:var(--serif);font-size:18px;font-weight:700;margin-bottom:var(--space);padding-bottom:var(--space-sm);border-bottom:2px solid var(--border);display:inline-block}.section-title::before{content:'';display:inline-block;width:5px;height:15px;background:var(--primary);border-radius:1px;margin-right:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:rgba(255,255,255,.6);color:var(--text-secondary);font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none;white-space:nowrap;line-height:1.4;min-height:38px}.btn:hover{border-color:var(--primary-light);color:var(--primary);background:#fff;box-shadow:var(--shadow-sm)}.btn-primary{background:var(--primary-gradient);border-color:transparent;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 3px 12px rgba(91,108,255,.3)}.btn-primary:hover{background:var(--primary-dark);border-color:transparent;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 5px 16px rgba(91,108,255,.38)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626;border-color:#dc2626;color:#fff}.btn-lg{padding:12px 28px;font-size:16px;min-height:46px;border-radius:var(--radius)}.btn-sm{padding:5px 12px;font-size:13px;min-height:30px;border-radius:var(--radius-sm)}.btn-block{width:100%}.btn-liked{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.btn-liked:hover{background:var(--danger);color:#fff}.field{margin-bottom:var(--space)}.field label{display:block;font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.field input[type="text"],.field input[type="email"],.field input[type="password"],.field input[type="number"],.field input[type="file"],.field select,.field textarea{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;font-family:inherit;background:#fff;color:var(--text);transition:var(--transition);outline:none}.field textarea{resize:vertical;min-height:100px;line-height:1.6}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.12)}.field input[type="checkbox"],.field input[type="radio"]{width:auto;margin-right:6px;accent-color:var(--primary)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.hint{font-size:13px;color:var(--muted)}.hint a{color:var(--primary)}.form-tip{font-size:13px;color:var(--muted);margin-bottom:var(--space)}.inline-form{display:inline}.alert{padding:12px 18px;border-radius:var(--radius);margin-bottom:var(--space);font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;animation:slideDown .3s ease;transition:opacity .5s ease}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert.success{background:rgba(34,197,94,.10);color:#065f46;border:1px solid rgba(34,197,94,.25)}.alert.success::before{content:'✓';width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#0d9488);color:#fff;font-size:12px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.alert.error{background:rgba(244,63,94,.10);color:#991b1b;border:1px solid rgba(244,63,94,.28)}.alert.error::before{content:'!';width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,#fb7185,#e11d48);color:#fff;font-size:13px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}html[data-theme="dark"] .alert.success{color:#86efac}html[data-theme="dark"] .alert.error{color:#fda4af}.alert.fade-out{opacity:0;transition:opacity .5s ease}.muted{color:var(--muted)}.result-count{font-size:14px;font-weight:400}.breadcrumb{display:flex;align-items:center;gap:0;font-size:13px;color:var(--muted);margin-bottom:var(--space);flex-wrap:wrap;overflow-x:auto;padding:8px 16px;background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:fit-content;max-width:100%;box-sizing:border-box}html[data-theme="dark"] .breadcrumb{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.09)}.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--primary)}.breadcrumb::-webkit-scrollbar{height:2px}.breadcrumb::-webkit-scrollbar-thumb{background:var(--muted-light);border-radius:2px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space);margin-bottom:var(--space);flex-wrap:wrap}.toolbar h1{font-size:22px}.toolbar-center{flex-direction:column;text-align:center;gap:var(--space)}.toolbar-center h1{font-size:26px}.toolbar-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap}.stats-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space);background:var(--card-bg);border:1px solid var(--border-light);border-radius:var(--radius-full);padding:10px 20px;margin-bottom:var(--space);flex-wrap:nowrap;overflow-x:auto;box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.7)}.stats-left{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted);white-space:nowrap;flex-shrink:1;min-width:0;overflow:hidden}.stats-left>span{display:inline-flex;align-items:center;gap:4px}.stats-left strong{font-family:var(--sans);font-size:14px;color:var(--text);font-weight:700}.stats-newuser a{color:inherit;text-decoration:none;transition:color 0.2s}.stats-newuser a:hover{text-decoration:underline;color:var(--primary)}.stats-bar strong.stats-newuser strong,.stats-newuser{color:var(--success);font-weight:600}.stats-newuser strong{color:var(--success)}.stats-sep{color:var(--muted-light)}.stats-right{display:flex;align-items:center;gap:6px;font-size:13px;white-space:nowrap;flex-shrink:0}.stats-right a{color:var(--text-secondary);padding:4px 10px;border-radius:var(--radius-full)}.stats-right a:hover{background:var(--primary-bg);color:var(--primary)}.stats-right a.active{color:var(--primary);font-weight:600;background:var(--primary-bg)}.ad-zone{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:var(--radius);padding:14px 18px;margin-bottom:var(--space);position:relative}.ad-zone-empty{background:var(--border-light);border:1px dashed var(--muted-light);text-align:center;padding:14px}.ad-zone-empty a{color:var(--primary);font-weight:600}.ad-zone-label{position:absolute;top:-10px;left:16px;background:var(--warning);color:#fff;font-size:11px;font-weight:700;padding:2px 10px;border-radius:var(--radius-full)}.ad-list{display:flex;flex-wrap:wrap;gap:12px}.ad-item{display:flex;align-items:center;gap:10px;background:#fff;border-radius:var(--radius-sm);padding:10px 14px;text-decoration:none;color:var(--text);flex:1;min-width:200px;border:1px solid rgba(245,158,11,.2);transition:var(--transition)}.ad-item:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.ad-item img{width:44px;height:44px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.ad-info{min-width:0;flex:1}.ad-title{font-weight:700;font-size:14px;color:#92400e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ad-desc{font-size:12px;color:#78716c;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ad-zone-buy{text-align:right;margin-top:8px;font-size:12px}.ad-zone-buy a{color:#92400e;font-weight:600}.ad-days{display:flex;gap:10px;flex-wrap:wrap}.ad-day-option{display:flex;flex-direction:column;align-items:center;border:2px solid var(--border);border-radius:var(--radius);padding:12px 20px;cursor:pointer;transition:var(--transition);min-width:80px}.ad-day-option input{display:none}.ad-day-option:has(input:checked){border-color:var(--primary);background:var(--primary-bg)}.ad-day-num{font-weight:700;font-size:15px;color:var(--text)}.ad-day-price{font-size:12px;color:var(--primary);margin-top:2px;font-weight:600}.cat-nav{display:flex;gap:8px;margin-bottom:var(--space);flex-wrap:wrap;border-bottom:none;padding:2px 0}.cat-item{position:relative;padding:7px 15px;border-radius:var(--radius-full);font-size:14px;font-weight:600;color:var(--text-secondary);background:rgba(255,255,255,.55);border:1px solid var(--border-light);transition:var(--transition);display:inline-flex;align-items:center;gap:5px}.cat-item::after{content:none}.cat-item:hover{color:var(--primary);background:#fff;border-color:var(--primary-light)}.cat-item.active{color:#fff;background:var(--primary-gradient);border-color:transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 10px rgba(91,108,255,.3)}.cat-count{font-size:11px;background:none;color:var(--muted);padding:0;border-radius:0;font-weight:600;font-family:var(--sans);opacity:.85}.cat-item.active .cat-count{color:rgba(255,255,255,.85)}.cat-sub-nav{background:var(--bg-deep);padding:10px 14px;border-radius:var(--radius-sm);margin-top:-8px;margin-bottom:var(--space);border:1px solid var(--border-light);display:flex;align-items:center;flex-wrap:wrap;gap:8px}.cat-sub-label{font-size:12px;color:var(--muted);font-weight:700;margin-right:2px;display:inline-flex;align-items:center;gap:5px;letter-spacing:1px;white-space:nowrap;flex-shrink:0}.cat-sub-label::before{content:'';width:4px;height:12px;background:var(--primary);border-radius:1px}.cat-child{padding:6px 14px;font-size:13px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-full);transition:all .2s ease;font-weight:500;color:var(--text-secondary)}.cat-child:hover{background:var(--card-bg);border-color:var(--primary);color:var(--primary)}.cat-child.active{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:600}.cat-child .cat-count{font-size:10px;background:none;padding:0;border-radius:0;font-weight:600}.cat-child.active .cat-count{color:inherit;opacity:.75}.cat-row-top{background:transparent;font-weight:600}.cat-row-sub{background:rgba(91,108,255,.05)}.cat-row-sub td{color:var(--text-secondary)}.cat-sub-prefix{color:var(--muted);margin-right:4px;font-weight:400}.cat-tag{display:inline-block;padding:2px 10px;background:var(--bg-deep);color:var(--text-secondary);border-radius:var(--radius-sm);font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;transition:all 0.2s ease}.cat-tag:hover{background:var(--primary-bg);color:var(--primary)}.post-list{display:flex;flex-direction:column;gap:10px;padding:0;margin:0;list-style:none}.post-item{display:flex;align-items:flex-start;gap:14px;background:var(--card-bg);border-radius:var(--radius-lg);padding:15px 20px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.7);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;width:100%;box-sizing:border-box}.post-item:hover{border-color:rgba(139,148,255,.45);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.7);transform:translateY(-1px)}.post-item.unread{border-left:3px solid var(--primary)}.post-item.is-sticky{background:linear-gradient(135deg,rgba(109,123,255,.22),rgba(168,120,255,.15));border-color:rgba(124,140,255,.55);border-left:4px solid #6472ff;box-shadow:0 3px 16px rgba(109,123,255,.20),inset 0 1px 0 rgba(255,255,255,.65)}.post-item.is-sticky:hover{border-color:rgba(124,140,255,.75);box-shadow:0 6px 22px rgba(109,123,255,.28),inset 0 1px 0 rgba(255,255,255,.75)}.post-item.is-sticky-global{background:linear-gradient(135deg,rgba(244,63,94,.14),rgba(251,113,133,.09));border-color:rgba(244,63,94,.5);border-left-color:#f43f5e;box-shadow:0 3px 16px rgba(244,63,94,.18),inset 0 1px 0 rgba(255,255,255,.65)}.post-item.is-sticky-global:hover{border-color:rgba(244,63,94,.7);box-shadow:0 6px 22px rgba(244,63,94,.26),inset 0 1px 0 rgba(255,255,255,.75)}.post-avatar-col{flex-shrink:0;padding-top:2px}.post-avatar-col a{display:block;transition:transform 0.2s ease}.post-avatar-col a:hover{transform:scale(1.08)}.post-avatar-col img{border-radius:50%;border:2px solid var(--card-bg);box-shadow:0 1px 4px rgba(38,35,29,.12)}.post-main{flex:1;min-width:0;display:flex;justify-content:space-between;align-items:center;gap:16px}.post-main-left{flex:1;min-width:0}.post-main-right{flex-shrink:0;display:flex;align-items:center}.reply-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:30px;padding:0 12px;border-radius:15px;font-size:13px;font-weight:700;transition:all 0.2s ease}.reply-count-badge.no-replies{background:var(--bg-deep);color:var(--muted)}.reply-count-badge.has-replies{background:var(--text);color:var(--bg)}.post-item:hover .reply-count-badge.has-replies{background:var(--primary);color:#fff}.post-title{font-family:var(--serif);font-size:16.5px;font-weight:700;color:var(--text);text-decoration:none;line-height:1.45;display:block;margin-bottom:9px;transition:color 0.2s ease;word-break:break-word}.post-title:hover{color:var(--primary)}.post-title-row{display:flex;align-items:center;gap:8px;margin-bottom:9px;min-width:0}.post-title-row .post-title{flex:0 1 auto;min-width:0;margin-bottom:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-title-row .sticky-tag{margin-right:0;flex-shrink:0}.post-title-big{font-family:var(--serif);font-size:22px;font-weight:900;line-height:1.45;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border)}.post-title-big .sticky-tag{vertical-align:middle;margin-left:8px;margin-right:0}.post-meta{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted);flex-wrap:wrap;row-gap:6px;margin-bottom:8px}.post-detail .post-meta{margin-bottom:0;padding-bottom:14px;border-bottom:1px solid var(--border-light)}.post-detail .post-meta-sub{height:0;display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;font-size:12px;color:var(--muted);margin:0 0 18px;position:relative;z-index:1}.post-meta-sub .time,.post-meta-sub .post-views,.post-meta-sub .reply-count-mini{transform:translateY(-50%);background:var(--card-bg-solid,#fff);padding:0 6px;line-height:1.7;color:var(--muted);font-size:12px;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.post-meta .author{color:var(--text-secondary);font-weight:600;text-decoration:none;transition:color 0.2s ease}.post-meta .author:hover{color:var(--primary)}.post-meta .time{color:var(--muted);font-size:12px}.post-meta .post-views{color:var(--muted);font-size:12px;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.post-meta .reply-count-mini{color:var(--muted);font-size:12px;display:inline-flex;align-items:center;gap:3px;white-space:nowrap;margin-left:2px}.post-views::before,.reply-count-mini::before{content:'';width:13px;height:13px;flex-shrink:0;opacity:.75}.post-views::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238d877b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7-10-7-10-7z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") no-repeat center/contain}.reply-count-mini::before{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238d877b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.38 8.38 0 0 1-8.5 8.5 8.5 8.5 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 8.5-8.5 8.38 8.38 0 0 1 8.5 8.5z'/%3E%3C/svg%3E") no-repeat center/contain}.vip-name{color:#e11d48;font-weight:700}.vip-badge{display:inline-block;margin-left:4px;padding:0 5px;font-size:10px;line-height:15px;color:#fff;background:linear-gradient(135deg,#f43f5e,#dc2648);border-radius:4px;vertical-align:1px;font-weight:700;letter-spacing:.3px}.sticky-until-tip{color:var(--muted);font-size:12px}.post-meta .time + .cat-tag::before{content:'·';margin-right:10px;color:var(--muted-light);font-weight:bold}.post-meta .post-actions{margin-left:auto;display:inline-flex;align-items:center;gap:14px}.post-meta .post-actions a,.post-meta .post-actions button{font-size:13px;padding:2px 0}.avatar{border-radius:50%;object-fit:cover;display:inline-block;vertical-align:middle;flex-shrink:0}.avatar-default{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--primary-gradient);color:#fff;font-weight:700;text-align:center;overflow:hidden}.meta-avatar{display:inline-flex;flex-shrink:0;margin-right:2px}.meta-avatar .avatar{display:block}.lv-badge{display:inline-block;padding:1px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:700}.lv-badge.lv1{background:#e2e8f0;color:#475569}.lv-badge.lv2{background:#d5f2dd;color:#15803d}.lv-badge.lv3{background:#dfe4fb;color:#4453e6}.lv-badge.lv4{background:#fdeeb8;color:#b45309}.lv-badge.lv5{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.lv-badge.lv6{background:#fce0ec;color:#be185d}.lv-badge.lv7{background:#cdf5f6;color:#0e7490}.lv-badge.lv8{background:#ecd9fb;color:#7e22ce}.lv-badge.lv9{background:#fbd4d4;color:#b91c1c}.sticky-tag{display:inline-block;padding:3px 10px;background:linear-gradient(135deg,#6472ff,#8b5cf6);color:#fff;border-radius:20px;font-size:11px;font-weight:700;margin-right:8px;box-shadow:0 2px 8px rgba(100,114,255,.45);letter-spacing:0.5px}.verified-tag{display:inline-block;padding:1px 8px;background:var(--success-bg);color:var(--success);border-radius:var(--radius-full);font-size:11px;font-weight:700}.unread-tag{display:inline-block;padding:1px 8px;background:var(--danger-bg);color:var(--danger);border-radius:var(--radius-full);font-size:11px;font-weight:700}.post-content{font-size:15px;line-height:1.8;color:var(--text);word-break:break-word;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border)}.post-content p{margin-bottom:14px}.post-content h2,.post-content h3,.post-content h4{margin:20px 0 10px}.post-content img,.reply-content img{max-width:100%;height:auto;border-radius:var(--radius);cursor:zoom-in;transition:var(--transition)}.post-content img:hover,.reply-content img:hover{opacity:.9}.post-content blockquote,.reply-content blockquote{border-left:4px solid var(--primary);background:var(--primary-bg);padding:10px 16px;margin:14px 0;border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary)}.post-content pre,.reply-content pre{background:#1e2438;color:#c5cde8;padding:16px 18px;border-radius:10px;overflow-x:auto;margin:14px 0;font-size:14px;line-height:1.7;font-family:'SF Mono',Consolas,'Courier New',monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;border:1px solid #2a3352}.post-content pre code,.reply-content pre code{background:none;padding:0;color:inherit;font-size:inherit;font-family:inherit}.post-content code,.reply-content code{background:var(--border-light);padding:2px 6px;border-radius:4px;font-size:13px;font-family:'SF Mono',Consolas,monospace}.post-content table,.reply-content table{width:100%;border-collapse:collapse;margin:14px 0}.post-content th,.post-content td,.reply-content th,.reply-content td{border:1px solid var(--border);padding:8px 12px;text-align:left}.post-content th,.reply-content th{background:var(--border-light);font-weight:600}.post-content ul,.post-content ol{margin:10px 0 10px 20px}.post-content li{margin-bottom:4px}.like-bar{display:flex;align-items:center;gap:var(--space);margin-top:var(--space-lg);padding-top:var(--space);border-top:1px dashed var(--border)}.like-count{font-size:14px;color:var(--muted);font-weight:600}.reply-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:14px 0 4px}.videos-wrap{margin:12px 0;border:1px solid var(--border-light);border-radius:12px;overflow:hidden;background:#fff}.videos-stage video{width:100%;max-height:480px;display:block;background:#000}.videos-ep-title{background:#eaeef7;border-top:1px solid var(--border-light);padding:10px 14px;font-size:13px;font-weight:700;color:#3d4661;display:flex;align-items:center;gap:6px}.videos-ep-title::after{content:'';flex:1;height:1px;background:linear-gradient(90deg,var(--border),transparent);margin-left:4px}.videos-ep-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:14px 16px;background:#eaeef7;border-top:1px solid var(--border-light);margin:0 !important;list-style:none}.ep-item{padding:6px 16px;border-radius:18px;background:#fff;border:1px solid var(--border);font-size:13px;font-weight:500;color:#475069;cursor:pointer;transition:all .18s ease;user-select:none;box-shadow:0 1px 2px rgba(38,35,29,.04)}.ep-item:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 6px rgba(188,74,38,.12)}.ep-item.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-color:transparent;color:#fff;box-shadow:0 3px 10px rgba(188,74,38,.28)}@media (max-width:640px){.ep-item{font-size:12px;padding:5px 12px}.videos-ep-list{gap:8px;padding:10px 10px}.videos-stage video{max-height:340px}}.reply-filters{display:inline-flex;gap:4px;background:var(--border-light);border-radius:20px;padding:3px}.rf-pill{font-size:12px;padding:4px 14px;border-radius:16px;color:#64748b;text-decoration:none;transition:all .15s;white-space:nowrap}.rf-pill:hover{color:var(--primary)}.rf-pill.on{background:var(--primary);color:#fff}@media (max-width:640px){.reply-toolbar{margin-top:10px}.rf-pill{font-size:12px;padding:4px 12px}}.reply-list{display:flex;flex-direction:column;gap:10px;margin-top:var(--space);padding:0;margin-left:0;margin-right:0;list-style:none}.reply-item{background:var(--card-bg);border-radius:var(--radius);padding:14px 18px;border:1px solid var(--border-light);transition:var(--transition)}.reply-item:hover{border-color:var(--border);box-shadow:var(--shadow-sm)}.reply-item:last-child{margin-bottom:0}.reply-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;flex-wrap:wrap}.reply-head .author{color:var(--text-secondary);font-weight:600}.reply-head .author:hover{color:var(--primary)}.reply-head .time{font-family:var(--serif);font-weight:700;color:var(--muted-light);font-size:13px;letter-spacing:.5px}.reply-content{font-size:14px;line-height:1.7;color:var(--text);word-break:break-word}.reply-content p{margin-bottom:8px}.reply-item.reply-sub{margin-left:40px;background:var(--bg-deep);border-left:3px solid var(--primary-light)}.reply-actions{margin-left:auto;display:inline-flex;align-items:center;gap:12px}.reply-btn{background:none;border:none;color:#64748b;font-size:13px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all 0.2s ease}.reply-btn:hover{color:var(--primary);background:var(--primary-bg)}.reply-delete-btn{background:none;border:none;color:#ef4444;font-size:13px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all 0.2s ease}.reply-delete-btn:hover{color:#fff;background:#ef4444}.sub-reply-form{margin-top:12px;padding:12px;background:#eaeef7;border-radius:8px;border:1px solid var(--border)}.sub-reply-input textarea{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:13px;resize:vertical;box-sizing:border-box;font-family:inherit}.sub-reply-input textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(188,74,38,0.1)}.sub-reply-btns{margin-top:8px;display:flex;gap:8px;justify-content:flex-end}.btn-sm{padding:4px 12px;font-size:13px}.hide-content-box{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;margin:14px 0;background:var(--bg-deep);border:2px dashed var(--primary-light);border-radius:var(--radius);color:var(--primary-dark);font-size:14px}.hide-content-box .hide-icon{font-size:22px;line-height:1;flex-shrink:0}.hide-content-box .hide-text{display:inline;color:var(--primary-dark);font-weight:600;white-space:normal}.hide-content-box a{color:var(--primary);font-weight:700;text-decoration:none;border-bottom:1px dashed var(--primary-light);padding-bottom:1px}.hide-content-box a:hover{color:var(--primary-dark);border-bottom-style:solid}.pay-content-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px 20px;margin:14px 0;background:linear-gradient(135deg,#eef0ff,#f6f4ff);border:2px dashed #8b94ff;border-radius:12px;color:#4a58f0;font-size:14px;text-align:center}.pay-content-box .pay-lock{font-weight:600;color:#4a58f0}.pay-content-box a{color:#4553e8;font-weight:700;text-decoration:none;border-bottom:1px dashed #8b94ff;padding-bottom:1px}.pay-content-box a:hover{color:#3a46d4;border-bottom-style:solid}.pay-content-box .btn{margin-top:2px}.bili-wrap{position:relative;width:100%;aspect-ratio:16 / 9;margin:12px 0;border-radius:10px;overflow:hidden;background:#000}.bili-wrap .bili-player{position:absolute;inset:0;width:100%;height:100%;border:0}.replies-login-hint{text-align:center;padding:16px 20px;background:var(--primary-bg);border:1px solid var(--border);color:var(--primary-dark);font-size:14px}.replies-login-hint .replies-lock-icon{font-size:15px}.replies-login-hint a{color:var(--primary);font-weight:700}.user-signature{margin-top:14px;padding-top:10px;display:flex;align-items:center;gap:12px}.user-signature .signature-divider{flex-shrink:0;width:3px;height:16px;background:linear-gradient(180deg,var(--primary-light),var(--primary));border-radius:2px}.user-signature .signature-text{color:var(--muted);font-size:13px;font-style:italic;line-height:1.5}.profile-signature{margin-top:12px;padding:10px 14px;background:#eaeef7;border-radius:8px;border-left:3px solid var(--primary-light);font-size:13px;color:#64748b}.profile-signature .signature-label{color:var(--primary);font-weight:600;margin-right:6px}.profile-signature-edit{margin-top:12px}.signature-input-row{display:flex;gap:10px;align-items:center}.signature-input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:13px;font-family:inherit;transition:all 0.2s ease}.signature-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(188,74,38,0.1)}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:var(--space-lg);flex-wrap:wrap}.pagination a,.pagination span{padding:8px 14px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;border:1px solid var(--border);background:var(--card-bg);color:var(--text-secondary);transition:var(--transition)}.pagination a:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.pagination .current{background:var(--text);color:var(--bg);border-color:var(--text);font-weight:700}.pagination .page-ellipsis{border-color:transparent;background:transparent;color:var(--muted);padding:8px 6px}@media (max-width:640px){.pagination{gap:5px}.pagination a,.pagination span{padding:7px 11px;font-size:13px;min-height:34px}}.profile-card{display:flex;align-items:flex-start;gap:var(--space-lg);margin-bottom:var(--space)}.profile-avatar{flex-shrink:0;line-height:0}.profile-info{flex:1;min-width:0}.profile-name{font-size:24px;margin-bottom:8px;font-weight:800}.profile-stats{color:var(--muted);font-size:13px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:8px}.profile-email{margin-top:10px;font-size:13px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;background:linear-gradient(135deg,#eaeef7,var(--primary-bg));border:1px solid #e4e9f4;border-radius:12px}.email-label{font-weight:700;color:var(--primary);font-size:14px}.email-val{font-weight:600;color:#3d4661;word-break:break-all}.tag-warn{background:#fff4e5;color:#b45309;border:1px solid #f5c98a;padding:2px 12px;border-radius:999px;font-size:12px;font-weight:600}.email-bind-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.email-bind-form input[type="email"]{border:1px solid var(--muted-light);border-radius:8px;padding:7px 12px;font-size:13px;background:#fff;outline:none;transition:border-color .2s,box-shadow .2s}.email-bind-form input[type="email"]:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(188,74,38,.15)}.profile-actions{margin-top:var(--space);display:flex;gap:var(--space-sm);flex-wrap:wrap}.avatar-upload-form{display:inline}.message-list{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space)}.message-item{background:var(--card-bg);border-radius:var(--radius);padding:14px 16px;border:1px solid var(--border-light);transition:var(--transition)}.message-item:hover{box-shadow:var(--shadow-sm)}.msg-time{font-size:12px;color:var(--muted)}.msg-body{font-size:14px;color:var(--text);margin-top:6px;line-height:1.6}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th,.admin-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-light)}.admin-table th{background:var(--border-light);font-weight:600;color:var(--text-secondary);font-size:13px;white-space:nowrap}.admin-table tr:hover td{background:var(--primary-bg)}.admin-table input[type="text"],.admin-table input[type="number"]{padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;width:100%;max-width:120px}.admin-table input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(91,108,255,.12)}.admin-table .input-sort{max-width:60px;text-align:center}.admin-actions{display:flex;gap:6px;flex-wrap:wrap}.install-form{max-width:520px;margin:0 auto}.install-form label.hint{display:block;margin-bottom:4px}.install-table{width:100%;border-collapse:collapse;margin:var(--space) 0}.install-table td{padding:8px 12px;border-bottom:1px solid var(--border-light);font-size:14px}.install-table .ok{color:var(--success);font-weight:600}.install-table .bad{color:var(--danger);font-weight:600}.manage-links{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space)}.manage-links a{padding:8px 16px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;font-weight:500;color:var(--text-secondary);transition:var(--transition)}.manage-links a:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-bg)}.link-link{color:var(--info)}.link-link:hover{color:var(--primary-dark);text-decoration:underline}.link-danger{color:var(--danger)}.link-danger:hover{color:#b91c1c;text-decoration:underline}.shop-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:var(--space)}.shop-balance{display:flex;gap:20px}.balance-item{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.balance-label{font-size:12px;color:var(--muted)}.balance-value{font-weight:700;font-size:18px;color:var(--primary)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space)}.shop-item{padding:0;overflow:hidden;display:flex;flex-direction:column}.shop-item-img{width:100%;height:160px;overflow:hidden;background:var(--border-light);display:flex;align-items:center;justify-content:center}.shop-item-img img{width:100%;height:100%;object-fit:cover;display:block}.shop-item-img-default{font-size:48px;background:var(--primary-bg)}.shop-item-body{padding:14px 16px;flex:1;display:flex;flex-direction:column}.shop-item-name{margin:0 0 6px;font-size:16px;font-weight:700}.shop-item-desc{margin:0 0 10px;font-size:13px;color:var(--muted);line-height:1.5;flex:1}.shop-item-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.shop-item-price{font-weight:700;color:#d97706;font-size:16px}.shop-item-stock{font-size:12px;color:var(--muted)}.shop-item-stock.out{color:var(--danger);font-weight:600}.checkin-card{background:linear-gradient(135deg,#faf3e0,#f5e8c8);border:1px solid #e3cf9a}.checkin-header{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.checkin-icon{font-size:48px;line-height:1}.checkin-info{flex:1;min-width:200px}.checkin-info h1{margin:0 0 4px;font-size:22px}.checkin-info p{margin:0;color:var(--muted);font-size:14px}.checkin-info strong{color:var(--primary);font-size:18px}.checkin-action{flex-shrink:0}.checkin-rewards{display:flex;gap:12px;margin-top:var(--space);flex-wrap:wrap}.reward-item{background:#fff;border-radius:var(--radius-sm);padding:10px 16px;border:1px solid #e3cf9a;display:flex;flex-direction:column;gap:2px}.reward-label{font-size:12px;color:var(--muted)}.reward-value{font-weight:700;color:var(--warning);font-size:15px}.reward-progress{font-size:11px;color:#64748b;margin-top:2px}.checkin-week{margin-top:var(--space-lg)}.week-title{font-weight:600;margin-bottom:10px;font-size:14px;color:var(--text)}.week-days{display:flex;gap:8px;flex-wrap:wrap}.week-day{flex:1;min-width:60px;text-align:center;padding:10px 4px;border-radius:var(--radius-sm);background:var(--border-light);border:1px solid var(--border);position:relative}.week-day.checked{background:#dcfce7;border-color:#86efac}.week-day.today{border-color:var(--primary);border-width:2px}.week-day-icon{font-size:18px;font-weight:700;color:var(--muted)}.week-day.checked .week-day-icon{color:#16a34a}.week-day-label{font-size:11px;color:var(--muted);margin-top:2px}.week-day-today{font-size:10px;color:var(--primary);font-weight:700;margin-top:1px}.editor{border:1px solid var(--border);border-radius:var(--radius);overflow:visible;background:#fff;transition:var(--transition)}.editor:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.1)}.editor-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:8px;background:var(--border-light);border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;overflow:visible;position:sticky;top:var(--header-height);z-index:30;box-shadow:0 4px 12px rgba(38,35,29,.06)}.verify-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:8px 16px;background:linear-gradient(90deg,#eef0ff,#f6f4ff);border-bottom:1px solid rgba(139,148,255,.35);color:#3d4661;font-size:14px;text-align:center}.verify-banner .btn{margin:0}.editor-btn{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;color:var(--text-secondary);transition:var(--transition);position:relative}.editor-btn:hover{background:#fff;color:var(--primary)}.editor-btn.open{background:var(--primary);color:#fff}.editor-btn .caret{font-size:10px;margin-left:2px}.editor-sep{width:1px;background:var(--border);margin:4px 4px}.editor-menu{position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:100;min-width:160px;max-height:320px;overflow-y:auto;padding:4px;display:none}.editor-btn.open .editor-menu{display:block}.editor-menu-item{display:block;width:100%;padding:8px 12px;border:none;background:transparent;text-align:left;font-size:13px;color:var(--text);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition)}.editor-menu-item + .editor-menu-item{margin-top:2px}.editor-menu-item:hover{background:var(--primary-bg);color:var(--primary)}.editor-menu-item.upload{color:var(--success);font-weight:600}.editor-menu-item.upload:hover{background:var(--success-bg);color:var(--success)}.editor-menu-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:4px}.editor-menu-cell{width:24px;height:24px;border-radius:4px;cursor:pointer;border:1px solid transparent;transition:var(--transition)}.editor-menu-cell:hover{border-color:var(--text);transform:scale(1.15)}.editor-menu-swatches{display:flex;flex-wrap:wrap;gap:4px;padding:8px}.editor-menu .swatch{width:20px;height:20px;border-radius:4px;cursor:pointer;border:1px solid var(--border);transition:var(--transition)}.editor-menu .swatch:hover{transform:scale(1.2)}@media (max-width:640px){.editor-menu{max-width:300px}.editor-menu-grid{grid-template-columns:repeat(6,1fr);gap:3px;padding:6px}.editor-menu-cell{width:30px;height:30px;font-size:15px}.editor-menu-cell:hover{transform:none}.editor-menu-swatches{gap:5px;padding:10px;max-width:200px}.editor-menu .swatch{width:26px;height:26px}.editor-menu-item{padding:10px 14px;font-size:14px}}.editor-area{padding:14px 16px;min-height:200px;outline:none;font-size:14px;line-height:1.7;color:var(--text)}.editor-area:empty::before{content:attr(data-placeholder);color:var(--muted)}.editor-area .hide-marker{display:inline-block;margin:0 4px;padding:0 6px;border-radius:4px;background:#f1e8ff;color:#8b5cf6;font-size:12px;font-weight:700;line-height:20px;vertical-align:middle;user-select:none}.editor-area .reply-marker{display:inline-block;margin:0 4px;padding:0 6px;border-radius:4px;background:#e4e9f4;color:var(--primary);font-size:12px;font-weight:700;line-height:20px;vertical-align:middle;user-select:none}.editor-area .pay-marker{display:inline-block;margin:0 4px;padding:0 6px;border-radius:4px;background:#eef0ff;color:#4a58f0;font-size:12px;font-weight:700;line-height:20px;vertical-align:middle;user-select:none}.editor-area img{max-width:100%;border-radius:var(--radius-sm);margin:8px 0}.editor-area a{color:var(--primary);text-decoration:underline}.editor-area blockquote{border-left:3px solid var(--primary);padding-left:12px;color:var(--text-secondary);margin:8px 0}.editor-area pre{background:#1e2438;color:#c5cde8;padding:14px 16px;border-radius:10px;overflow-x:auto;margin:10px 0;font-size:14px;line-height:1.7;font-family:'SF Mono',Consolas,'Courier New',monospace;border:1px solid #2a3352;-webkit-font-smoothing:antialiased}.editor-area code[data-ph]{color:#64748b;font-style:italic}.editor-area code{background:var(--border-light);padding:2px 6px;border-radius:4px;font-size:13px}.editor-area table{border-collapse:collapse;margin:8px 0;width:100%}.editor-area th,.editor-area td{border:1px solid var(--border);padding:6px 10px}.editor-area ul,.editor-area ol{padding-left:24px;margin:8px 0}.hl-keyword{color:#93c5fd;font-weight:600}.hl-string{color:#86efac}.hl-number{color:#fbbf24}.hl-comment{color:#64748b;font-style:italic}.lightbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.lightbox-overlay[hidden]{display:none}.lightbox-img{max-width:90vw;max-height:90vh;border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:zoomIn .25s ease}@keyframes zoomIn{from{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.lightbox-close{position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:24px;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.lightbox-close:hover{background:rgba(255,255,255,.25);transform:rotate(90deg)}.auth-pop{position:fixed;top:calc(var(--header-height) + 8px);right:16px;width:320px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border);z-index:200;padding:20px;animation:popIn .2s ease}@keyframes popIn{from{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-pop[hidden]{display:none}.modal-close{position:absolute;top:8px;right:8px;width:30px;height:30px;border:none;background:transparent;font-size:20px;color:var(--muted);cursor:pointer;border-radius:50%;transition:var(--transition);display:flex;align-items:center;justify-content:center;z-index:5}.modal-close:hover{background:var(--border-light);color:var(--text)}.auth-tabs{display:flex;gap:0;margin-bottom:16px;border-bottom:2px solid var(--border-light);padding-right:38px}.auth-tab{flex:1;padding:10px;border:none;background:transparent;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;transition:var(--transition);border-bottom:2px solid transparent;margin-bottom:-2px}.auth-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.auth-pane{display:block}.auth-pane[hidden]{display:none}.auth-pop .field{margin-bottom:12px}.auth-pop .field label{font-size:13px}.auth-pop .field input[type="text"],.auth-pop .field input[type="email"],.auth-pop .field input[type="password"]{padding:9px 12px;font-size:14px}.auth-msg{font-size:13px;margin-bottom:10px;min-height:20px}.auth-msg.ok{color:var(--success)}.auth-msg.err{color:var(--danger)}.site-footer{background:var(--bg-deep);border-top:1px solid var(--border);padding:var(--space) 0;text-align:center;font-size:13px;color:var(--muted)}.footer-rss a{color:var(--muted)}.footer-rss a:hover{color:var(--primary)}@media (max-width:1100px){.search-form{max-width:260px}.nav a{padding:8px 9px}}@media (max-width:900px){.container{padding:0 14px}main.container{padding-top:20px}.site-header{height:auto}.header-inner{flex-wrap:wrap;height:auto;min-height:var(--header-height);row-gap:2px;padding:8px 0}.search-form{max-width:200px}.nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:2px;padding-bottom:2px}.nav::-webkit-scrollbar{display:none}.nav>*{flex-shrink:0}.nav a{padding:7px 8px;font-size:13px;white-space:nowrap}.card{padding:20px}.post-item{padding:14px 16px;gap:12px}.post-title{font-size:15px}.post-meta{gap:10px;font-size:12px}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.editor-toolbar{padding:6px;gap:1px}.editor-btn{min-width:30px;height:30px;font-size:13px;padding:0 6px}.editor-area{padding:12px 14px;font-size:14px}}@media (max-width:640px){:root{--header-height:56px}body{font-size:14px}.container{padding:0 12px}main.container{padding-top:16px;padding-bottom:24px;min-height:calc(100vh - var(--header-height) - 50px)}.site-header{height:auto;padding:6px 0}.header-inner{flex-wrap:wrap;height:auto;gap:6px;padding:0 12px}.logo{order:1;flex:0 1 auto;min-width:0;max-width:42%;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo-img img{height:28px}.search-form{order:2;flex:1 1 auto;width:auto;min-width:0;max-width:none}.search-form input{padding:6px 12px 6px 32px;font-size:13px}.nav{order:3;flex:1 1 100%;margin-left:0;margin-right:-12px;padding-right:12px;gap:0;min-width:0;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav>*{flex-shrink:0}.nav.nav-guest{justify-content:flex-end}.nav a{padding:5px 9px;font-size:12.5px;white-space:nowrap;min-height:32px;display:inline-flex;align-items:center}.nav a.nav-post{padding:4px 12px;margin-left:2px;font-size:12.5px}.nav .hi{font-size:12.5px}.card{padding:16px;border-radius:var(--radius);margin-bottom:12px}.card.narrow{padding:16px}h1{font-size:20px}h2{font-size:17px}h3{font-size:15px}.btn{padding:10px 16px;font-size:14px;min-height:42px;border-radius:var(--radius)}.btn-lg{padding:12px 24px;font-size:15px;min-height:46px}.btn-sm{padding:6px 12px;font-size:12px;min-height:32px}.field{margin-bottom:14px}.field input[type="text"],.field input[type="email"],.field input[type="password"],.field input[type="number"],.field select,.field textarea{padding:11px 14px;font-size:15px;min-height:44px}.field textarea{min-height:120px}.toolbar{flex-direction:column;align-items:flex-start;gap:12px}.toolbar h1{font-size:20px}.toolbar-center h1{font-size:22px}.toolbar-actions{width:100%}.toolbar-actions .btn{flex:1}.stats-bar{padding:10px 14px;font-size:12px;gap:8px;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;border-radius:var(--radius-full);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;--fade-l:#000;--fade-r:#000;-webkit-mask-image:linear-gradient(to right,var(--fade-l) 0,#000 24px,#000 calc(100% - 24px),var(--fade-r) 100%);mask-image:linear-gradient(to right,var(--fade-l) 0,#000 24px,#000 calc(100% - 24px),var(--fade-r) 100%)}.stats-bar::-webkit-scrollbar{display:none}.stats-bar.fade-l{--fade-l:transparent}.stats-bar.fade-r{--fade-r:transparent}.stats-left{flex:0 0 auto;min-width:max-content;overflow:visible;white-space:nowrap;gap:10px;font-size:12px}.stats-left>.stats-sep{display:inline}.stats-left .stats-newuser{max-width:50vw;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-right{flex-shrink:0;gap:6px;margin-left:auto}.ad-list{flex-direction:column}.ad-item{min-width:0;padding:10px 12px}.ad-days{gap:8px}.ad-day-option{padding:10px 14px;min-width:70px;flex:1}.cat-nav{gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}.cat-nav::-webkit-scrollbar{display:none}.cat-item{padding:7px 14px;font-size:13px;white-space:nowrap;flex-shrink:0}.post-item{gap:10px;padding:12px 14px}.post-avatar-col .avatar,.post-avatar-col .avatar-default{width:36px !important;height:36px !important;font-size:15px !important;line-height:36px !important}.post-title{font-size:15px;line-height:1.4}.post-meta{gap:6px;font-size:12px;flex-wrap:wrap;row-gap:4px;white-space:normal}.post-meta .author,.post-meta .time{font-size:12px;white-space:nowrap}.post-meta .time{overflow:visible;text-overflow:clip}.post-meta .post-views{font-size:11px;white-space:nowrap}.post-meta .reply-count-mini{font-size:11px}.post-meta .cat-tag{flex-shrink:0;padding:1px 8px;font-size:11px;white-space:nowrap}.post-meta .vip-badge{font-size:9px;padding:0 4px;line-height:14px}.post-meta .author + .time::before,.post-meta .time + .cat-tag::before{margin-right:5px}.post-content{font-size:14px;line-height:1.75}.post-content p{margin-bottom:12px}.like-bar{gap:12px;margin-top:16px;padding-top:12px}.reply-item{padding:12px 14px}.reply-head{gap:8px;font-size:12px}.reply-content{font-size:14px}.pagination a,.pagination span{padding:8px 12px;font-size:13px;min-height:38px;display:inline-flex;align-items:center;justify-content:center}.profile-card{flex-direction:column;align-items:center;text-align:center;gap:16px}.profile-avatar .avatar,.profile-avatar .avatar-default{width:72px !important;height:72px !important;font-size:30px !important;line-height:72px !important}.profile-info{text-align:center}.profile-name{font-size:20px}.profile-stats{justify-content:center;gap:14px;font-size:12px}.profile-email{justify-content:center}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-actions .btn{flex:none;width:100%;min-width:0;box-sizing:border-box;text-align:center}.profile-actions .avatar-upload-form{display:block;width:100%}.shop-header{flex-direction:column;align-items:flex-start;gap:12px}.shop-balance{width:100%;justify-content:space-between}.balance-item{align-items:flex-start}.shop-grid{grid-template-columns:1fr;gap:12px}.shop-item-img{height:140px}.checkin-header{flex-direction:column;text-align:center;gap:12px}.checkin-info{min-width:0;text-align:center}.checkin-info h1{font-size:20px}.checkin-rewards{flex-direction:column;gap:8px}.reward-item{flex-direction:row;justify-content:space-between;align-items:center}.week-days{gap:4px}.week-day{min-width:40px;padding:8px 2px}.week-day-icon{font-size:16px}.week-day-label{font-size:10px}.admin-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;table-layout:auto}.admin-table th,.admin-table td{padding:8px 10px;font-size:13px}.admin-table input[type="text"],.admin-table input[type="number"]{max-width:100px;font-size:13px}.admin-actions{gap:4px}.editor-toolbar{padding:6px;gap:1px}.editor-btn{min-width:30px;height:30px;font-size:13px;padding:0 6px}.editor-area{padding:12px 14px;min-height:160px;font-size:15px}.auth-pop{top:auto;bottom:0;left:0;right:0;width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom));max-height:85vh;overflow-y:auto}.lightbox-close{top:12px;right:12px;width:40px;height:40px;font-size:22px}.lightbox-img{max-width:95vw;max-height:85vh}.breadcrumb{font-size:12px;gap:0;margin-bottom:12px}.alert{padding:10px 14px;font-size:13px}}@media (max-width:400px){.container{padding:0 10px}.card{padding:14px}.post-title{font-size:14px}.post-meta{font-size:11px;gap:6px}.nav{gap:0}.nav a{padding:4px 7px;font-size:12px}.nav a.nav-post{padding:4px 10px}.logo{max-width:40%;font-size:16px}.btn{padding:9px 14px;font-size:13px;min-height:40px}.profile-stats{gap:10px;font-size:12px}.week-day{min-width:36px;padding:6px 2px}.week-day-label{font-size:9px}}@media print{.site-header,.site-footer,.btn,.toolbar-actions,.like-bar,.reply-form,.auth-pop,.lightbox-overlay,.sidebar{display:none !important}.card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}body{background:#fff}}.layout-with-sidebar{display:flex;gap:20px;align-items:flex-start}.main-content{flex:1;min-width:0}.sidebar{width:280px;flex-shrink:0;display:flex;flex-direction:column;gap:16px;position:sticky;top:76px}.widget{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--border-light);overflow:hidden;box-shadow:var(--shadow-sm)}.widget-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:transparent;border-bottom:1px solid var(--border-light)}.widget-title{font-family:var(--serif);font-size:14px;font-weight:700;color:var(--text);display:inline-flex;align-items:center;gap:7px}.widget-title::before{content:'';width:4px;height:13px;background:var(--primary);border-radius:1px;flex-shrink:0}.widget-action{font-size:12px;color:var(--primary);font-weight:600;text-decoration:none;padding:3px 10px;border-radius:999px;background:var(--primary-bg);border:1px solid var(--primary-light);transition:all .2s}.widget-action:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.widget-body{padding:12px 16px}.widget-empty{text-align:center;padding:16px 8px;font-size:13px;color:var(--muted)}.widget-empty a{color:var(--primary);font-weight:600;text-decoration:none}.widget-ad .ad-item-sidebar{display:block;padding:0 0 10px;margin-bottom:10px;border-bottom:1px solid var(--border-light);text-decoration:none}.widget-ad .ad-item-sidebar:last-child{border-bottom:none;margin-bottom:0}.widget-ad .ad-item-sidebar img{width:100%;height:90px;object-fit:cover;border-radius:8px;display:block}.links-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.link-item{display:block;text-align:center;padding:8px 4px;font-size:13px;color:#475069;text-decoration:none;border-radius:6px;background:#eaeef7;border:1px solid var(--border);transition:all .2s;white-space:normal;overflow:hidden;text-overflow:clip;word-break:break-word}.link-item:hover{background:var(--primary-bg);border-color:#ecc9ae;color:var(--primary);transform:translateY(-1px)}.widget-custom .widget-body{font-size:14px;line-height:1.6;color:#3d4661}.widget-custom .widget-body img{max-width:100%;border-radius:8px}@media (max-width:900px){.layout-with-sidebar{gap:16px}.sidebar{width:240px;top:72px}.links-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.layout-with-sidebar{flex-direction:column;align-items:stretch;gap:16px}.main-content{width:100%}.sidebar{width:100%;position:static;flex-direction:column}.links-grid{grid-template-columns:repeat(3,1fr)}.widget{border-radius:10px}.widget-header{padding:10px 14px}.widget-body{padding:10px 14px}.editor-toolbar{position:static;box-shadow:none}}@media (max-width:400px){.links-grid{grid-template-columns:repeat(2,1fr)}}.post-actions{display:inline-flex;align-items:center;gap:14px;margin-left:8px}.post-actions a,.post-actions button{font-size:13px;font-weight:500;padding:0;background:none;border:none;cursor:pointer;text-decoration:none;transition:color .2s}.post-actions .link-link{color:var(--primary)}.post-actions .link-link:hover{color:var(--primary-dark);text-decoration:underline}.post-actions .link-danger{color:#dc2626}.post-actions .link-danger:hover{color:#b91c1c;text-decoration:underline}.post-actions form{display:inline}.widget-author{padding:0;overflow:hidden}.widget-author-bg{height:64px;background:radial-gradient(circle at 85% 20%,rgba(139,148,255,.45),transparent 55%),linear-gradient(135deg,#2b3350,#1c2333)}.widget-author-info{display:flex;gap:12px;padding:0 16px 12px;margin-top:-32px;align-items:flex-end}.widget-author-avatar{flex-shrink:0;line-height:0;display:block}.widget-author-avatar .avatar,.widget-author-avatar .avatar-default{border:3px solid var(--card-bg);box-shadow:0 2px 10px rgba(38,35,29,.2)}.widget-author-meta{flex:1;min-width:0;padding-bottom:4px}.widget-author-name{font-family:var(--serif);font-size:15px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.widget-author-name>a{color:var(--text);text-decoration:none}.widget-author-name>a:hover{color:var(--primary)}.widget-author-uid{font-size:12px;color:var(--muted);margin-top:3px;font-family:'SF Mono',Consolas,monospace}.widget-author-stats{display:flex;border-top:1px solid var(--border-light);padding:12px 0}.widget-author-stats .stat-item{flex:1;text-align:center;border-right:1px solid var(--border-light)}.widget-author-stats .stat-item:last-child{border-right:none}.widget-author-stats .stat-num{font-family:var(--serif);font-size:18px;font-weight:800;color:var(--primary)}.widget-author-stats .stat-label{font-size:11px;color:var(--muted);margin-top:2px}.cat-vip-lock{margin-left:4px;font-size:11px;vertical-align:1px}.cat-vip-tag{display:inline-block;margin-left:4px;padding:1px 8px;font-size:11px;font-weight:700;color:#fff;background:linear-gradient(135deg,#f43f5e,#dc2648);border-radius:999px;vertical-align:1px}.vip-gate-text{font-size:15px;color:#3d4661;padding:6px 0}.vip-gate-text strong{color:#e11d48}.vip-growth-panel{margin-bottom:var(--space);padding:16px 20px}.vip-growth-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}.vip-growth-title{font-size:16px;font-weight:700;color:var(--primary)}.vip-growth-val{font-size:14px;color:#3d4661}.vip-growth-val strong{color:#e11d48;font-size:16px}.vip-growth-level{font-size:13px;color:#64748b;margin-left:auto}.vip-growth-bar{height:10px;background:var(--border);border-radius:999px;overflow:hidden}.vip-growth-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#6472ff,#8b5cf6);transition:width .4s ease}.growth-line{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;padding:2px 0}.growth-mini-bar{display:inline-block;width:72px;height:8px;background:var(--border);border-radius:999px;overflow:hidden;vertical-align:-1px}.growth-mini-bar span{display:block;height:100%;background:linear-gradient(90deg,#6472ff,#8b5cf6);border-radius:999px}.time-today{color:var(--primary);font-weight:600}.post-content video,.reply-content video,.editor-area video{max-width:100%;border-radius:8px;margin:10px 0;background:#000;display:block}.post-content a[download],.reply-content a[download]{display:inline-block;margin:4px 0;padding:6px 14px;border:1px solid #e4e9f4;background:#eaeef7;border-radius:8px;text-decoration:none;color:var(--primary);font-weight:600}.post-content a[download]:hover,.reply-content a[download]:hover{background:var(--primary-bg);border-color:var(--primary)}@media (max-width:640px){.post-meta{flex-wrap:wrap;overflow:visible;white-space:normal}.post-meta .time,.post-meta .post-views{white-space:nowrap;overflow:visible;text-overflow:clip;flex-shrink:0}.post-meta .cat-tag{flex-shrink:0}}.nf-wrap{display:flex;justify-content:center;padding:40px 16px}.nf-card{max-width:520px;width:100%;text-align:center;padding:44px 32px 36px}.nf-code{font-size:84px;font-weight:900;line-height:1;font-family:var(--serif);color:var(--primary);letter-spacing:2px}.nf-icon{font-size:44px;margin:6px 0 14px}.nf-title{font-size:20px;margin:0 0 8px;color:var(--text)}.nf-desc{color:var(--muted);margin:0 0 22px;font-size:14px}.nf-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.nf-search{display:flex;gap:8px;max-width:380px;margin:0 auto 18px}.nf-search input{flex:1;min-width:0;padding:9px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.nf-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.12)}.nf-search .btn{flex-shrink:0}.nf-foot{color:var(--muted);font-size:13px;margin:0}.nf-foot a{color:var(--primary)}@media (max-width:640px){.nf-code{font-size:64px}.nf-card{padding:32px 18px 28px}.nf-actions .btn{flex:1}}.msg-card{overflow:hidden}.msg-card-head{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--text);margin-bottom:14px;padding:12px 0;border-bottom:1px solid #eef2f7}.msg-card-head strong{color:var(--primary);font-size:17px}.msg-head-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;font-size:16px;flex-shrink:0}.msg-form textarea{width:100%;min-height:150px;padding:14px 16px;border:2px solid var(--border);border-radius:12px;font-size:15px;line-height:1.75;color:#2a3352;resize:vertical;box-sizing:border-box;background:#fbfdff;font-family:inherit;transition:border-color .2s,box-shadow .2s,background .2s}.msg-form textarea:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 4px rgba(91,108,255,.12)}.msg-form textarea::placeholder{color:#a5b4cf}.msg-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}.msg-footer .form-tip{margin:0;color:var(--muted);font-size:13px}.msg-footer-btns{display:flex;gap:10px;align-items:center}.msg-detail-card{padding:20px 22px}.msg-detail-head{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-bottom:1px solid #eef2f7;margin-bottom:14px}.msg-detail-avatars{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--primary-bg),var(--primary-bg));font-size:20px;flex-shrink:0}.msg-body{font-size:15px;line-height:1.8;color:#3d4661;white-space:pre-wrap;word-break:break-word}.post-list .post-item.unread{border-left:3px solid var(--primary);background:linear-gradient(90deg,#eaeef7,#fff)}.unread-tag{display:inline-block;background:var(--primary);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}@media (max-width:640px){.msg-footer{flex-direction:column;align-items:stretch}.msg-footer .btn{width:100%;text-align:center}.msg-footer-btns{flex-direction:column;align-items:stretch}.msg-form textarea{min-height:120px}}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;background:#f3f4f6;color:#475069;vertical-align:middle;line-height:1.5;white-space:nowrap}.badge-pending{background:#fef3c7;color:#92400e}.badge-ok{background:#dcfce7;color:#166534}.badge-no{background:#fee2e2;color:#991b1b}.badge-muted{background:#e5e7eb;color:#4b5563}.recharge-wrap{display:flex;flex-direction:column;gap:14px}.recharge-account{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}.recharge-uname{font-size:18px;font-weight:700;color:var(--primary);margin:0 8px;word-break:break-all}.recharge-qr-tabs{display:flex;gap:8px;margin:14px 0 0}.qr-tab{padding:8px 18px;border:1px solid var(--muted-light);background:#fff;border-radius:8px 8px 0 0;cursor:pointer;font-size:14px;color:#475069;transition:all .2s}.qr-tab:hover{color:var(--primary);border-color:var(--primary-light)}.qr-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.recharge-qr-box{border:1px solid var(--border);border-radius:0 10px 10px 10px;padding:18px;text-align:center;min-height:210px;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.qr-pane{display:none}.qr-pane.active{display:block}.qr-pane img{width:190px;height:190px;object-fit:contain;border-radius:6px}.qr-zoom-mask{position:fixed;inset:0;background:rgba(0,0,0,.78);display:flex;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out}.qr-zoom-img{max-width:90vw;max-height:90vh;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.5)}.qr-zoom-close{position:absolute;top:24px;right:32px;color:#fff;font-size:42px;line-height:1;cursor:pointer;text-shadow:0 2px 8px rgba(0,0,0,.5)}@media (max-width:600px){.qr-zoom-close{top:12px;right:18px;font-size:34px}.qr-zoom-img{max-width:94vw;max-height:80vh}}.recharge-filter{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.recharge-filter input[type="text"],.recharge-filter input[type="date"]{padding:6px 10px;border:1px solid var(--muted-light);border-radius:8px;font-size:13px;background:var(--card-bg);color:var(--text)}.recharge-filter input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(91,108,255,.12)}.recharge-form{margin-top:14px;max-width:440px}.balance-label{display:block;font-size:13px;font-weight:600;color:var(--muted);margin:12px 0 6px}.recharge-quick{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.quick-amt{padding:7px 14px;border:1px solid var(--border);background:rgba(255,255,255,.85);color:var(--text-secondary);border-radius:var(--radius-full);font-size:13px;font-weight:600;cursor:pointer;transition:all .18s ease;display:inline-flex;align-items:center;gap:4px}.quick-amt:hover{color:var(--primary);background:var(--primary-bg);border-color:var(--primary-light);transform:translateY(-1px)}.quick-amt.active{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:0 3px 10px rgba(91,108,255,.30)}.recharge-amount-row{display:flex;gap:10px;align-items:center;margin:6px 0 14px}.recharge-amount-row input{flex:1;padding:10px 12px;border:1px solid var(--muted-light);border-radius:8px;font-size:15px;outline:none;transition:all .18s}.recharge-amount-row input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.12)}.recharge-coin-preview{white-space:nowrap;color:var(--muted);font-size:13px}.recharge-coin-preview strong{color:var(--primary);font-weight:800;font-size:15px}.recharge-table-wrap{margin:14px -22px -22px -22px;overflow:auto;-webkit-overflow-scrolling:touch}.recharge-table{width:100%;border-collapse:collapse;font-size:14px;background:#fff}.recharge-table thead th{padding:11px 14px;text-align:left;background:#eef1fb;color:#46507a;font-weight:700;font-size:13px;white-space:nowrap;border-top:1px solid var(--border-light);border-bottom:1.5px solid rgba(91,108,255,.35);letter-spacing:.2px}.recharge-table thead th:first-child{min-width:180px;width:180px;max-width:180px;overflow:hidden}.recharge-table thead th:nth-child(2){min-width:160px}.recharge-table thead th:nth-child(3){min-width:90px}.recharge-table thead th:nth-child(4){min-width:90px}.recharge-table thead th:nth-child(5){min-width:70px}.recharge-table thead th:nth-child(6){min-width:90px}.recharge-table tbody td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--border-light);vertical-align:middle;color:var(--text);background:#fff}.recharge-table tbody tr:last-child td{border-bottom:none}.recharge-table tbody tr:nth-child(even) td{background:#f7f9fe}.recharge-table tbody tr:hover td{background:var(--primary-bg)}.recharge-table .rt-orderno{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;color:#4a5683;white-space:nowrap;min-width:180px;width:180px;max-width:180px;overflow:hidden;text-overflow:ellipsis;font-weight:600;display:table-cell !important;visibility:visible !important}.recharge-table .rt-orderno:empty::before{content:'#' attr(data-id);color:#9aa3c2}.recharge-table tbody td:first-child{min-width:180px;width:180px;max-width:180px}.recharge-table tbody td:nth-child(2){min-width:160px}.recharge-table tbody td:nth-child(3){min-width:90px}.recharge-table tbody td:nth-child(4){min-width:90px}.recharge-table tbody td:nth-child(5){min-width:70px}.recharge-table tbody td:nth-child(6){min-width:90px}.recharge-table .rt-time{white-space:nowrap;color:var(--text-secondary)}.recharge-table .rt-amount{font-weight:700;color:#1f2745;white-space:nowrap}.recharge-table .rt-coins{font-weight:700;color:#3b4677}.recharge-table .rt-way{color:#475069}.recharge-table .badge{padding:3px 12px;font-weight:600}.recharge-table .btn-danger-mini{background:#fef2f2;color:#b91c1c;border:1px solid rgba(185,28,28,.2);border-radius:8px;padding:4px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.recharge-table .btn-danger-mini:hover{background:#fee2e2;transform:translateY(-1px)}html[data-theme="dark"] .recharge-table-wrap{background:#1c233c}html[data-theme="dark"] .recharge-table{background:#1c233c}html[data-theme="dark"] .recharge-table thead th{background:#252e54;color:#b4bde0;border-bottom-color:rgba(124,140,255,.45);border-top-color:rgba(160,175,220,.10)}html[data-theme="dark"] .recharge-table tbody td{background:#1c233c;border-bottom-color:rgba(160,175,220,.10);color:#dde3f5}html[data-theme="dark"] .recharge-table tbody tr:nth-child(even) td{background:#202948}html[data-theme="dark"] .recharge-table tbody tr:hover td{background:rgba(124,140,255,.14)}html[data-theme="dark"] .recharge-table .rt-orderno{color:#97a2c4}html[data-theme="dark"] .recharge-table .rt-amount{color:#e7ebff}html[data-theme="dark"] .recharge-table .rt-coins{color:#c2caee}html[data-theme="dark"] .recharge-table .rt-way{color:#b9c1dd}html[data-theme="dark"] .recharge-table .btn-danger-mini{background:rgba(185,28,28,.14);color:#fda4af;border-color:rgba(244,63,94,.3)}@media (max-width:640px){.recharge-table-wrap{margin:12px -16px -16px -16px}.recharge-table thead th,.recharge-table tbody td{padding:10px;font-size:13px}.recharge-table .rt-orderno{font-size:11px}}.recharge-reject-tip{margin-left:10px;color:#b91c1c;font-size:12px}.recharge-balance{color:var(--primary);font-size:20px;font-weight:800;margin:0 2px}@media (max-width:640px){.recharge-qr-tabs{flex-wrap:wrap}.qr-tab{flex:1;text-align:center;padding:8px 8px;font-size:13px}.recharge-qr-box{padding:12px;min-height:170px}.qr-pane img{width:150px;height:150px}.recharge-amount-row{flex-direction:column;align-items:stretch}.recharge-coin-preview{white-space:normal}.quick-amt{padding:6px 12px;font-size:12px}.recharge-reject-tip{display:block;margin-left:0;margin-top:4px}}@media (max-width:640px){.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.profile-stats>span{display:block;background:#eaeef7;border:1px solid #eef2f7;border-radius:10px;padding:7px 10px;text-align:left;white-space:normal;word-break:break-all;line-height:1.5}.profile-stats>.growth-line,.profile-stats>.profile-vip-line{grid-column:1 / -1}.profile-stats>.p-reg{grid-column:1 / -1;white-space:nowrap;word-break:normal;text-align:left;overflow:hidden;text-overflow:ellipsis}.profile-stats .growth-mini-bar{display:inline-block;vertical-align:middle;margin:0 4px}.profile-email .inline-form{width:100%;display:flex;flex-wrap:wrap;gap:8px}.profile-email .inline-form input[type="email"]{flex:1 1 100%;box-sizing:border-box}.shop-balance{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.balance-item{background:#eaeef7;border:1px solid #eef2f7;border-radius:10px;padding:10px 12px;align-items:flex-start}.balance-value{font-size:16px}.vip-growth-panel .hint{white-space:normal;word-break:break-all;line-height:1.6}.week-days{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.week-day{min-width:0;padding:8px 2px}}@media (max-width:640px){.checkin-rank-table{display:table;width:100%;table-layout:fixed;white-space:normal}.checkin-rank-table th,.checkin-rank-table td{padding:8px 4px;font-size:12px;text-align:center;word-break:break-all;vertical-align:middle}.checkin-rank-table th:nth-child(1){width:16%}.checkin-rank-table th:nth-child(2){width:40%}.checkin-rank-table th:nth-child(3){width:22%}.checkin-rank-table th:nth-child(4){width:22%}}.widget-header{display:flex;align-items:center;gap:8px}.apply-link-head{margin-left:auto;font-size:12px;color:var(--primary);font-weight:600;text-decoration:none;flex-shrink:0}.apply-link-head:hover{opacity:.8}.modal-mask{position:fixed;inset:0;background:rgba(38,35,29,.55);z-index:999999;display:none;align-items:center;justify-content:center;padding:16px}.modal-box{position:relative;margin:auto;background:#fff;border-radius:14px;width:100%;max-width:400px;max-height:90vh;overflow:auto;box-shadow:0 20px 50px rgba(38,35,29,.3)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 52px 14px 18px;border-bottom:1px solid #eef2f7;font-weight:700;font-size:16px}.modal-head .modal-close{position:absolute;top:9px;right:9px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:18px;padding:0}.modal-close{color:var(--muted);font-size:18px;text-decoration:none;padding:2px 6px;border-radius:6px}.modal-close:hover{color:#3d4661;background:var(--border-light)}.apply-link-form{padding:18px}.apply-link-form .field{margin-bottom:12px}.apply-link-form label{display:block;font-size:13px;font-weight:600;color:#475069;margin-bottom:5px}.apply-link-form input{width:100%;box-sizing:border-box;padding:9px 12px;border:1px solid var(--muted-light);border-radius:8px;font-size:14px;outline:none}.apply-link-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.15)}.announce-bar{display:flex;align-items:stretch;background:rgba(109,123,255,.24);border:1.5px solid rgba(124,140,255,.5);border-radius:12px;margin:12px 0 14px;overflow:hidden;box-shadow:0 3px 14px rgba(109,123,255,.20)}.announce-label{flex-shrink:0;display:flex;align-items:center;background:var(--primary-gradient);color:#fff;font-size:12px;font-weight:700;padding:0 14px;letter-spacing:1px;border-radius:11px 0 0 11px;white-space:nowrap}.announce-viewport{flex:1;height:34px;overflow:hidden;position:relative;min-width:0}.announce-list{list-style:none;margin:0;padding:0;position:relative;height:100%}.announce-list li{position:absolute;left:0;top:0;width:100%;height:34px;display:flex;align-items:center;padding:0 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .45s ease;visibility:hidden}.announce-list li.active{opacity:1;transform:none;visibility:visible}.announce-list a{color:#4a58f0;font-size:13px;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announce-list a:hover{color:#4553e8;text-decoration:underline}@media (max-width:640px){.announce-label{padding:0 10px;font-size:11px}.announce-viewport{height:32px}.announce-list li{height:32px;display:flex;align-items:center;padding:0 10px;line-height:1.4;opacity:0;transform:translateY(10px);transition:opacity .45s ease,transform .45s ease;visibility:hidden}.announce-list a{font-size:12px}}.sticky-tag.sticky-global{background:linear-gradient(135deg,#f43f5e,#dc2648);box-shadow:0 2px 12px rgba(244,63,94,.5)}.ad-list-banner{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ad-item-banner{display:block;text-decoration:none;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fff;min-width:0}.ad-item-banner img{width:100%;height:90px;object-fit:cover;display:block;border-radius:0}@media (max-width:640px){.ad-list-banner{grid-template-columns:1fr}.ad-item-banner img{height:70px}}.hls-wrap{margin:12px 0;border-radius:10px;overflow:hidden;background:#000}.hls-wrap video{width:100%;max-height:460px;display:block;background:#000;aspect-ratio:16/9;object-fit:contain}.hls-fail{padding:32px 16px;color:var(--border);text-align:center;font-size:13px;background:#1e2438}.widget-rank .rank-tabs{display:flex;gap:10px;margin:10px 0 2px;padding-bottom:8px;border-bottom:1px solid var(--border-light)}.rank-tab{font-size:12px;color:#64748b;padding:3px 10px;border-radius:999px;cursor:pointer;background:var(--border-light);transition:all .2s;user-select:none}.rank-tab.active{background:var(--primary);color:#fff;font-weight:600}.rank-panel{display:none}.rank-panel.active{display:block}.rank-item{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px dashed var(--border-light)}.rank-item:last-child{border-bottom:none}.rank-num{width:20px;height:20px;border-radius:6px;background:var(--border);color:#64748b;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rank-num.top{background:linear-gradient(135deg,#6472ff,#8b5cf6);color:#fff}.rank-num-square{border-radius:5px}.rank-title{flex:1;min-width:0;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.rank-title:hover{color:var(--primary)}.rank-meta{font-size:11px;color:var(--primary);flex-shrink:0}.rank-reply-body{flex:1;min-width:0;display:flex;flex-direction:column}.rank-reply-body .rank-title{display:block;max-width:100%}.rank-sub{font-size:11px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-name{flex:1;min-width:0;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.rank-name:hover{color:var(--primary)}.rank-level{font-size:12px;color:#64748b;flex-shrink:0}.reply-like-btn{display:inline-flex;align-items:center;gap:3px;background:none;border:1px solid var(--border);color:#64748b;font-size:12px;border-radius:999px;padding:2px 8px;cursor:pointer;transition:all .2s}.reply-like-btn:hover{border-color:var(--primary);color:var(--primary)}.reply-like-btn.liked{background:#fff1f2;border-color:#f43f5e;color:#f43f5e;font-weight:600}.auth-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:10px;color:#fff;font-weight:700;margin-left:4px;vertical-align:1px;flex-shrink:0;line-height:1}.auth-admin{background:linear-gradient(135deg,#f59e0b,#ef4444);box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(239,68,68,.35)}.auth-mod{background:linear-gradient(135deg,#3d8f5f,#2c6e46);box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(45,110,70,.3)}.file-download{display:inline-flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:#fff;text-decoration:none;margin:10px 0;transition:all .2s;max-width:100%}.file-download:hover{border-color:var(--primary);box-shadow:0 2px 10px rgba(0,0,0,.07)}.file-icon{width:42px;height:42px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;flex-shrink:0;letter-spacing:.5px}.file-zip{background:linear-gradient(135deg,#f59e0b,#d97706)}.file-pdf{background:linear-gradient(135deg,#ef4444,#dc2626)}.file-doc{background:linear-gradient(135deg,#3d6b8e,#2c4f68)}.file-xls{background:linear-gradient(135deg,#22c55e,#16a34a)}.file-ppt{background:linear-gradient(135deg,#f97316,#ea580c)}.file-audio{background:linear-gradient(135deg,var(--primary-light),var(--primary-dark))}.file-txt{background:linear-gradient(135deg,#64748b,#475069)}.file-other{background:linear-gradient(135deg,var(--muted),#64748b)}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-name{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:12px;color:var(--muted)}.file-btn{font-size:12px;color:var(--primary);background:var(--primary-bg);border:1px solid var(--primary-light);padding:5px 14px;border-radius:999px;flex-shrink:0;font-weight:600;transition:all .2s}.file-download:hover .file-btn{background:var(--primary);color:#fff;border-color:var(--primary)}@media (max-width:480px){.file-download{gap:8px;padding:8px 10px}.file-icon{width:36px;height:36px;font-size:10px}.file-name{font-size:13px}}.captcha-row{display:flex;align-items:center;gap:10px}.captcha-row input{flex:1;min-width:0}.captcha-expr{font-size:16px;font-weight:700;color:var(--primary);background:var(--primary-bg);border:1px dashed var(--primary-light);padding:7px 14px;border-radius:6px;white-space:nowrap}.captcha-refresh{font-size:13px;color:var(--primary);text-decoration:none;flex-shrink:0}.captcha-refresh:hover{text-decoration:underline}@media (max-width:480px){.captcha-row{gap:8px}.captcha-expr{font-size:14px;padding:6px 10px}}.file-thumb{width:52px;height:52px;object-fit:cover;border-radius:6px;border:1px solid var(--border);cursor:zoom-in;display:block;background:#eaeef7}.file-thumb:hover{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-bg)}.hls-wrap{position:relative}.hls-status{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;color:var(--muted);font-size:13px;background:rgba(255,255,255,.9);padding:8px 16px;border-radius:999px;border:1px solid var(--border);white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.06)}.hls-wrap video{width:100%;aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:10px;display:block}.hls-fail{padding:14px 18px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;border-radius:10px;font-size:14px;text-align:center;margin:0}.hls-logo{position:absolute;top:12px;right:14px;z-index:3;pointer-events:none;opacity:.9;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#fff;background:rgba(0,0,0,.35);padding:4px 10px;border-radius:999px;backdrop-filter:blur(2px);max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hls-logo img{height:20px;width:auto;display:block}.hls-menu{position:fixed;z-index:99999;min-width:150px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 32px rgba(38,35,29,.18);padding:5px;animation:hlsMenuIn .15s ease}@keyframes hlsMenuIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.hls-menu-item{padding:9px 14px;font-size:13px;color:#2a3352;border-radius:7px;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px}.hls-menu-item:hover{background:var(--primary-bg);color:var(--primary)}.site-subtitle{text-align:center;font-size:14px;color:#64748b;padding:10px 16px 2px;letter-spacing:.3px}@media (max-width:640px){.site-subtitle{font-size:13px;padding:8px 12px 0}}.vresume-tip{position:absolute;top:12px;left:14px;z-index:3;font-size:12px;font-weight:600;color:#fff;background:rgba(91,108,255,.85);padding:6px 12px;border-radius:999px;pointer-events:none;animation:hlsMenuIn .2s ease}.hls-wrap .vresume-tip{top:12px;left:14px}.featured-tag{display:inline-block;padding:2px 9px;background:var(--primary-bg);color:var(--primary);border:1px solid rgba(91,108,255,.4);border-radius:6px;font-size:11px;font-weight:800;margin-left:8px;letter-spacing:2px;text-indent:2px;vertical-align:middle}.post-title-row .featured-tag{margin-left:0;margin-right:0;flex-shrink:0}.post-title-big .featured-tag{margin-left:0}.post-tags{display:flex;flex-wrap:wrap;gap:6px;margin:-4px 0 12px}.post-tag{display:inline-block;padding:2px 10px;background:var(--primary-bg);color:var(--primary);border-radius:999px;font-size:12px;font-weight:600;text-decoration:none;border:1px solid #e4e9f4}.post-tag:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.tag-cloud{display:flex;flex-wrap:wrap;gap:8px}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--primary-bg);color:var(--primary);border-radius:999px;font-size:12px;font-weight:600;text-decoration:none;border:1px solid #e4e9f4;animation:tagPop .5s cubic-bezier(.2,.8,.3,1) both}.tag-chip em{font-style:normal;font-size:11px;color:var(--primary-light);font-weight:700}.tag-chip:hover{background:var(--primary);color:#fff;border-color:var(--primary);animation:none;transform:translateY(-2px)}.tag-chip:hover em{color:#fff}@keyframes tagPop{from{opacity:0;transform:translateY(8px) scale(.92)}to{opacity:1;transform:none}}.tag-chip.tag-all{background:#fff;border-style:dashed;border-color:var(--muted-light);color:#64748b}.tag-chip.tag-all em{color:var(--muted)}.tag-chip.tag-all:hover{background:var(--primary);border-style:solid;color:#fff}.tag-chip.tag-all:hover em{color:#fff}.tags-page-head{padding:6px 2px 12px;border-bottom:1px solid var(--border-light);margin-bottom:16px}.tags-page-title{font-size:18px;font-weight:700;margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tags-page-count{font-size:12px;font-weight:400;color:var(--muted)}.all-tags-cloud{padding:4px 2px}.all-tags-cloud .tag-chip{line-height:1.5}.hls-play{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:rgba(38,35,29,.35);cursor:pointer;transition:background .2s}.hls-play:hover{background:rgba(38,35,29,.5)}.hls-play-icon{width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--primary);font-size:26px;display:flex;align-items:center;justify-content:center;padding-left:6px;box-shadow:0 8px 24px rgba(0,0,0,.3)}.hls-play-text{color:#fff;font-size:13px;font-weight:600;letter-spacing:1px;text-shadow:0 1px 4px rgba(0,0,0,.5)}@media (max-width:640px){.file-table{display:block;overflow:visible;white-space:normal;background:transparent}.file-table .file-table-head{display:none}.file-table tr{display:block;background:#fff;border:1px solid var(--border);border-radius:10px;margin-bottom:10px;padding:6px 12px;box-shadow:0 1px 3px rgba(0,0,0,.04)}.file-table td{display:flex;align-items:center;gap:12px;padding:8px 2px;border:none;border-bottom:1px dashed var(--border-light);font-size:13px;white-space:normal;word-break:break-all}.file-table td:last-child{border-bottom:none}.file-table td::before{content:attr(data-label);font-weight:600;color:#64748b;flex:0 0 auto;min-width:70px}.file-table td[data-label="预览"]{justify-content:flex-start}.file-table td[data-label="操作"] .btn{width:100%}.file-table code{word-break:break-all}}.post-content .tag-inlink{color:var(--primary);text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.post-content .tag-inlink:hover{color:var(--primary-dark);background:var(--primary-bg)}#backTop{position:fixed;right:18px;bottom:90px;width:42px;height:42px;border-radius:50%;background:var(--text);color:var(--bg);border:none;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease,background .2s ease;z-index:999}#backTop.show{opacity:1;visibility:visible;transform:translateY(0)}#backTop:hover{background:var(--primary)}@media (max-width:640px){#backTop{right:12px;bottom:78px;width:38px;height:38px;font-size:18px}}.lz-dl{display:inline-block;padding:6px 14px;border-radius:8px;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff !important;font-size:13px;font-weight:600;text-decoration:none !important;cursor:pointer;margin:4px 2px;box-shadow:0 2px 6px rgba(91,108,255,.3)}.lz-dl:hover{opacity:.9}.list-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:2px 2px 0;margin-bottom:12px}.list-title{font-family:var(--serif);font-size:19px;font-weight:900;color:var(--text);display:inline-flex;align-items:baseline;gap:8px;margin:0}.list-sort{display:inline-flex;gap:2px;background:var(--bg-deep);border-radius:var(--radius-full);padding:3px}.list-sort a{font-size:12.5px;font-weight:600;color:var(--muted);padding:4px 13px;border-radius:var(--radius-full);transition:var(--transition)}.list-sort a:hover{color:var(--text)}.list-sort a.on{background:var(--card-bg);color:var(--text);box-shadow:var(--shadow-sm)}.announce-bar{background:rgba(109,123,255,.24);border:1.5px solid rgba(124,140,255,.45);box-shadow:0 3px 14px rgba(109,123,255,.18),inset 0 1px 0 rgba(255,255,255,.55);border-radius:var(--radius)}.announce-label{background:var(--primary-gradient);border-radius:0;letter-spacing:2px}.announce-list a{color:#3a46d4;font-weight:700}.announce-list a:hover{color:var(--primary)}.ad-zone{background:var(--warning-bg);border:1px solid rgba(240,180,41,.4)}.ad-zone-empty{border-color:var(--muted-light)}.post-content h2,.post-content h3,.post-content h4{font-family:var(--serif)}.post-content blockquote{border-left:3px solid var(--primary);background:var(--bg-deep);border-radius:0 var(--radius-sm) var(--radius-sm) 0}@media (max-width:640px){.cat-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:0}.cat-nav::-webkit-scrollbar{display:none}.cat-item{padding:9px 12px;font-size:13.5px;white-space:nowrap;flex-shrink:0}.list-head{padding:0 2px}.list-title{font-size:17px}}@keyframes riseIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.92)}60%{transform:scale(1.03)}100%{opacity:1;transform:scale(1)}}@keyframes glowSweep{from{transform:translateX(-130%) skewX(-18deg)}to{transform:translateX(230%) skewX(-18deg)}}.post-item,.card,.widget,.stats-bar,.announce-bar,.cat-nav,.list-head{animation:riseIn .45s cubic-bezier(.22,.9,.36,1) both}.post-list .post-item:nth-child(1){animation-delay:.02s}.post-list .post-item:nth-child(2){animation-delay:.06s}.post-list .post-item:nth-child(3){animation-delay:.10s}.post-list .post-item:nth-child(4){animation-delay:.14s}.post-list .post-item:nth-child(5){animation-delay:.18s}.post-list .post-item:nth-child(6){animation-delay:.22s}.post-list .post-item:nth-child(7){animation-delay:.26s}.post-list .post-item:nth-child(8){animation-delay:.30s}.post-list .post-item:nth-child(n+9){animation-delay:.34s}.sidebar .widget:nth-child(2){animation-delay:.10s}.sidebar .widget:nth-child(3){animation-delay:.16s}.cat-item{animation:popIn .35s cubic-bezier(.34,1.56,.64,1) both}.cat-item:nth-child(2){animation-delay:.03s}.cat-item:nth-child(3){animation-delay:.06s}.cat-item:nth-child(4){animation-delay:.09s}.cat-item:nth-child(5){animation-delay:.12s}.cat-item:nth-child(6){animation-delay:.15s}.post-item:hover,.card:hover{box-shadow:0 6px 22px rgba(91,108,255,.14),0 0 0 1px rgba(139,148,255,.22),inset 0 1px 0 rgba(255,255,255,.75)}.post-item{will-change:transform}.btn-primary,.nav a.nav-post,.auth-pop .btn-block{position:relative;overflow:hidden}.btn-primary::after,.nav a.nav-post::after,.auth-pop .btn-block::after{content:'';position:absolute;top:0;left:0;width:45%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-130%) skewX(-18deg);pointer-events:none}.btn-primary:hover::after,.nav a.nav-post:hover::after,.auth-pop .btn-block:hover::after{animation:glowSweep .7s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98)}.cat-item:hover{transform:translateY(-2px)}.cat-item:active{transform:translateY(0) scale(.97)}.rank-tab:hover{transform:translateY(-1px)}.nav a:not(.nav-post)::before{content:'';position:absolute;left:50%;bottom:2px;width:0;height:2px;border-radius:2px;background:var(--primary);transform:translateX(-50%);transition:width .25s cubic-bezier(.22,.9,.36,1)}.nav a:not(.nav-post):hover::before{width:55%}.search-form input:focus{animation:searchGlow 2.2s ease-in-out infinite}@keyframes searchGlow{0%,100%{box-shadow:0 0 0 3px rgba(91,108,255,.12)}50%{box-shadow:0 0 0 5px rgba(91,108,255,.08)}}.post-avatar-col a:hover{transform:scale(1.08) rotate(3deg)}#backTop{transition:all .3s cubic-bezier(.34,1.56,.64,1)}#backTop:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(91,108,255,.35)}.vip-badge{background:linear-gradient(120deg,#f43f5e,#dc2648,#fb7185,#f43f5e);background-size:300% 100%;animation:vipFlow 3.5s linear infinite}@keyframes vipFlow{from{background-position:0% 0}to{background-position:300% 0}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}html[data-theme="dark"]{--primary:#7c8cff;--primary-dark:#96a2ff;--primary-light:#a5b0ff;--primary-bg:rgba(124,140,255,.14);--primary-gradient:linear-gradient(135deg,#6d7bff,#5a66f5);--text:#e6eaf6;--text-secondary:#b3bcd4;--muted:#8290ad;--muted-light:#55607e;--bg:#0f1424;--bg-deep:#1a2138;--card-bg:rgba(28,35,60,.85);--card-bg-solid:#1c233c;--border:rgba(160,175,220,.16);--border-light:rgba(160,175,220,.09);--success:#4ade80;--success-bg:rgba(22,163,74,.16);--danger:#f87171;--danger-bg:rgba(229,72,77,.16);--warning:#fbbf24;--warning-bg:rgba(217,119,6,.16);--shadow-sm:0 1px 2px rgba(0,0,0,.25);--shadow:0 4px 16px rgba(0,0,0,.35);--shadow-md:0 10px 30px rgba(0,0,0,.45);--shadow-lg:0 20px 50px rgba(0,0,0,.55);color-scheme:dark}html[data-theme="dark"] body::before{background:radial-gradient(560px 420px at 12% -4%,rgba(109,123,255,.14),transparent 65%),radial-gradient(640px 480px at 90% 6%,rgba(168,120,255,.11),transparent 65%),radial-gradient(760px 560px at 50% 112%,rgba(236,72,153,.08),transparent 65%)}html[data-theme="dark"] .site-header{background:rgba(15,20,38,.62);border-bottom-color:rgba(160,175,220,.10)}.site-header::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#6d7bff 22%,#a878ff 48%,#ff8e96 74%,transparent);opacity:.85;pointer-events:none}.site-header .header-inner{position:relative}html[data-theme="dark"] .card,html[data-theme="dark"] .post-item,html[data-theme="dark"] .stats-bar{box-shadow:var(--shadow-sm),inset 0 1px 0 rgba(255,255,255,.05)}html[data-theme="dark"] .card:hover,html[data-theme="dark"] .post-item:hover{box-shadow:0 6px 22px rgba(0,0,0,.4),0 0 0 1px rgba(124,140,255,.28),inset 0 1px 0 rgba(255,255,255,.06)}html[data-theme="dark"] .cat-item{background:rgba(255,255,255,.06)}html[data-theme="dark"] .cat-item:hover{background:rgba(255,255,255,.10);color:var(--primary-light)}html[data-theme="dark"] .search-form input{background:rgba(255,255,255,.07)}html[data-theme="dark"] .search-form input:focus{background:#1c233c}html[data-theme="dark"] .btn{background:rgba(255,255,255,.07)}html[data-theme="dark"] .btn:hover{background:rgba(255,255,255,.12)}html[data-theme="dark"] .search-form::before{filter:invert(.8)}html[data-theme="dark"] .post-item.is-sticky{background:linear-gradient(135deg,rgba(109,123,255,.18),rgba(168,120,255,.12));border-color:rgba(124,140,255,.45);border-left-color:#7c8cff;box-shadow:0 3px 16px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.06)}html[data-theme="dark"] .post-item.is-sticky-global{background:linear-gradient(135deg,rgba(244,63,94,.16),rgba(251,113,133,.10));border-color:rgba(244,63,94,.45);border-left-color:#fb7185;box-shadow:0 3px 16px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.06)}html[data-theme="dark"] .announce-bar{background:rgba(109,123,255,.13);border-color:rgba(124,140,255,.42);box-shadow:0 3px 14px rgba(0,0,0,.35)}html[data-theme="dark"] .vip-name{color:#fb7185}html[data-theme="dark"] .post-content pre,html[data-theme="dark"] .reply-content pre,html[data-theme="dark"] .editor-area pre{background:#131a30;border-color:#232c4a}html[data-theme="dark"] .post-content code,html[data-theme="dark"] .reply-content code{background:#232c4a}html[data-theme="dark"] .hl-comment{color:#55607e}html[data-theme="dark"] .ad-item,html[data-theme="dark"] .ad-item-banner,html[data-theme="dark"] .file-download,html[data-theme="dark"] .qr-tab,html[data-theme="dark"] .modal-box,html[data-theme="dark"] .hls-menu,html[data-theme="dark"] .file-table tr{background:#1c233c;border-color:rgba(160,175,220,.14)}html[data-theme="dark"] .hls-menu-item{color:var(--text)}html[data-theme="dark"] .msg-form textarea{background:#171e34;color:var(--text)}html[data-theme="dark"] .msg-form textarea:focus{background:#1c233c}html[data-theme="dark"] .file-thumb{background:#1a2138}html[data-theme="dark"] .editor-btn:hover{background:rgba(255,255,255,.10)}html[data-theme="dark"] .avatar{background:#1a2138}html[data-theme="dark"] .lv-badge.lv1{background:rgba(160,175,220,.14);color:#aeb8d2}html[data-theme="dark"] .lv-badge.lv2{background:rgba(22,163,74,.18);color:#4ade80}html[data-theme="dark"] .lv-badge.lv3{background:rgba(124,140,255,.16);color:#a5b0ff}html[data-theme="dark"] .lv-badge.lv4{background:rgba(217,119,6,.18);color:#fbbf24}html[data-theme="dark"] .lv-badge.lv6{background:rgba(244,114,182,.18);color:#f9a8d4}html[data-theme="dark"] .lv-badge.lv7{background:rgba(34,211,238,.18);color:#67e8f9}html[data-theme="dark"] .lv-badge.lv8{background:rgba(168,85,247,.18);color:#d8b4fe}html[data-theme="dark"] .lv-badge.lv9{background:rgba(239,68,68,.18);color:#fca5a5}html[data-theme="dark"] .badge{background:rgba(160,175,220,.12);color:#b3bcd4}html[data-theme="dark"] .badge-pending{background:rgba(217,119,6,.18);color:#fbbf24}html[data-theme="dark"] .badge-ok{background:rgba(22,163,74,.18);color:#4ade80}html[data-theme="dark"] .badge-no{background:rgba(229,72,77,.18);color:#f87171}html[data-theme="dark"] .reply-like-btn.liked{background:rgba(244,63,94,.14)}html[data-theme="dark"] .tag-warn{background:rgba(217,119,6,.14);color:#fbbf24;border-color:rgba(251,191,36,.3)}html[data-theme="dark"] .tag-chip{border-color:rgba(124,140,255,.3)}html[data-theme="dark"] .tag-chip.tag-all{background:transparent;color:var(--muted)}html[data-theme="dark"] .pay-content-box{background:rgba(124,140,255,.08);border-color:rgba(124,140,255,.3)}html[data-theme="dark"] .verify-banner{background:rgba(124,140,255,.10);border-bottom-color:rgba(124,140,255,.25)}html[data-theme="dark"] .week-day.checked{background:rgba(22,163,74,.2);border-color:rgba(74,222,128,.4)}html[data-theme="dark"] .shop-item-price{color:#fbbf24}html[data-theme="dark"] .alert.success{background:rgba(22,163,74,.14);color:#86efac;border-color:rgba(74,222,128,.25)}html[data-theme="dark"] .alert.error{background:rgba(229,72,77,.14);color:#fca5a5;border-color:rgba(248,113,113,.25)}html[data-theme="dark"] .announce-list a{color:var(--primary-light)}.list-title{background:linear-gradient(120deg,var(--text) 30%,#6d7bff 75%,#a878ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-left:6px;border:1px solid var(--border-light);border-radius:var(--radius-full);background:rgba(255,255,255,.55);color:var(--text-secondary);cursor:pointer;transition:var(--transition);flex-shrink:0;padding:0}.theme-toggle:hover{background:#fff;color:var(--primary);border-color:var(--primary-light);transform:rotate(15deg);box-shadow:0 3px 10px rgba(91,108,255,.25)}.theme-toggle svg{width:17px;height:17px;display:block}.theme-toggle .ico-moon{display:none}html[data-theme="dark"] .theme-toggle{background:rgba(255,255,255,.08)}html[data-theme="dark"] .theme-toggle:hover{background:rgba(255,255,255,.14)}html[data-theme="dark"] .theme-toggle .ico-sun{display:none}html[data-theme="dark"] .theme-toggle .ico-moon{display:block}@media (max-width:640px){.theme-toggle{width:32px;height:32px;margin-left:2px}.theme-toggle svg{width:15px;height:15px}}.toolbar{margin:18px 0 20px;padding:16px 20px;background:var(--card-bg);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.toolbar h1{font-size:20px;margin:0;display:flex;align-items:center;gap:10px}.toolbar h1::before{content:'';width:4px;height:18px;border-radius:2px;flex:none;background:linear-gradient(180deg,var(--primary),var(--primary-dark))}.toolbar-actions{gap:8px}.toolbar .btn{padding:7px 14px;font-size:13px}.card>h2{font-size:17px;display:flex;align-items:center;gap:9px}.card>h2::before{content:'';width:4px;height:15px;border-radius:2px;flex:none;background:var(--primary)}.admin-table{border-collapse:separate;border-spacing:0;border:1px solid var(--border-light);border-radius:var(--radius)}.admin-table thead tr:first-child th:first-child{border-top-left-radius:var(--radius)}.admin-table thead tr:first-child th:last-child{border-top-right-radius:var(--radius)}.admin-table tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius)}.admin-table tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius)}.admin-table th,.admin-table td{padding:9px 10px;font-size:13px}.admin-table th{background:rgba(91,108,255,.07);color:var(--muted);font-weight:600;letter-spacing:.4px}@media (min-width:641px){.admin-table thead th{position:sticky;top:var(--header-height);z-index:5;box-shadow:0 1px 0 var(--border-light)}div[style*="overflow-x"] .admin-table thead th{top:0}}.admin-table tbody tr:nth-child(even) td{background:rgba(91,108,255,.025)}.admin-table tbody tr:hover td{background:var(--primary-bg)}.admin-table tr:last-child td{border-bottom:none}.admin-table select{padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;background:var(--card-bg);color:var(--text);max-width:130px}.admin-table input[type="checkbox"]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.admin-actions{gap:8px;align-items:center}.admin-actions .inline-form{display:inline-flex;align-items:center;gap:4px;margin:2px 0}.admin-actions .inline-form input[type="text"],.admin-actions .inline-form input[type="number"]{max-width:96px}.admin-table .cat-vip-tag{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11px;background:rgba(168,120,255,.12);color:var(--accent);border:1px solid rgba(168,120,255,.25);vertical-align:middle;margin-left:4px;white-space:nowrap}.admin-form .field label{font-size:13px;color:var(--text-secondary);font-weight:600}.admin-form .field input[type="text"],.admin-form .field select{max-width:420px}.admin-form .field label:has(input[type="checkbox"]){display:flex;align-items:center;gap:8px;max-width:420px;box-sizing:border-box;padding:9px 12px;background:rgba(91,108,255,.05);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;font-weight:400;line-height:1.5;transition:background .2s}.admin-form .field label:has(input[type="checkbox"]):hover{background:rgba(91,108,255,.09)}.admin-form .field label:has(input[type="checkbox"]) input{accent-color:var(--primary);width:15px;height:15px;flex:none}.admin-form .btn-primary{margin-top:6px}@media (max-width:640px){.toolbar-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.toolbar-actions .btn,.toolbar-actions .btn-drop{width:100%;text-align:center}}html[data-theme="dark"] .admin-table th{background:rgba(124,140,255,.10)}html[data-theme="dark"] .admin-table tbody tr:nth-child(even) td{background:rgba(255,255,255,.02)}html[data-theme="dark"] .cat-row-sub{background:rgba(124,140,255,.08)}html[data-theme="dark"] .admin-form .field label:has(input[type="checkbox"]){background:rgba(255,255,255,.04)}html[data-theme="dark"] .admin-form .field label:has(input[type="checkbox"]):hover{background:rgba(255,255,255,.07)}:where(*){scrollbar-width:thin;scrollbar-color:rgba(91,108,255,.35) transparent}:where(*)::-webkit-scrollbar{width:10px;height:10px}:where(*)::-webkit-scrollbar-track{background:transparent}:where(*)::-webkit-scrollbar-thumb{background:rgba(91,108,255,.30);border-radius:999px;border:2px solid transparent;background-clip:content-box}:where(*)::-webkit-scrollbar-thumb:hover{background-color:rgba(91,108,255,.55)}:where(*)::-webkit-scrollbar-corner{background:transparent}html[data-theme="dark"]:where(*){scrollbar-color:rgba(160,175,220,.30) transparent}html[data-theme="dark"]:where(*)::-webkit-scrollbar-thumb{background:rgba(160,175,220,.30);background-clip:content-box}html[data-theme="dark"]:where(*)::-webkit-scrollbar-thumb:hover{background-color:rgba(160,175,220,.55)}::selection{background:rgba(91,108,255,.24)}html[data-theme="dark"]::selection{background:rgba(124,140,255,.35)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.post-content img,.reply-content img{border-radius:10px;box-shadow:0 4px 18px rgba(50,65,120,.12)}html[data-theme="dark"] .post-content img,html[data-theme="dark"] .reply-content img{box-shadow:0 4px 18px rgba(0,0,0,.35)}.site-footer{border-top:1px solid var(--border-light);background:linear-gradient(180deg,transparent,rgba(91,108,255,.05))}html[data-theme="dark"] .site-footer{background:linear-gradient(180deg,transparent,rgba(124,140,255,.05))}.avatar{box-shadow:0 0 0 2px rgba(255,255,255,.9),0 2px 8px rgba(50,65,120,.14)}html[data-theme="dark"] .avatar{box-shadow:0 0 0 2px rgba(28,35,60,.95),0 2px 8px rgba(0,0,0,.4)}:where(input[type=text],input[type=password],input[type=email],input[type=number],input[type=url],input[type=search],input[type=date],textarea,select){background:var(--card-bg);border:1px solid var(--border);border-radius:10px;transition:border-color .2s,box-shadow .2s,background .2s}:where(input[type=text],input[type=password],input[type=email],input[type=number],input[type=url],input[type=search],input[type=date],textarea){padding:9px 12px}:where(input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=number]:focus,input[type=url]:focus,input[type=search]:focus,input[type=date]:focus,textarea:focus,select:focus){outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(91,108,255,.16)}.card.empty{border-style:dashed;background:transparent;box-shadow:none;backdrop-filter:none}.card.empty::before{content:'';display:block;width:46px;height:46px;margin:0 auto 12px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(91,108,255,.20),rgba(91,108,255,.05));border:1px dashed rgba(91,108,255,.45)}.widget{transition:border-color .25s,box-shadow .25s}.widget:hover{border-color:rgba(91,108,255,.35);box-shadow:0 8px 24px rgba(50,65,120,.10)}html[data-theme="dark"] .widget:hover{border-color:rgba(124,140,255,.4)}.widget-title::before{background:var(--primary-gradient);box-shadow:0 0 6px rgba(91,108,255,.5)}.post-content pre,.reply-content pre{position:relative;padding-top:40px;border-radius:12px;box-shadow:0 6px 20px rgba(20,28,60,.18)}.post-content pre::before,.reply-content pre::before{content:'';position:absolute;top:14px;left:16px;width:54px;height:12px;background:radial-gradient(circle at 6px 6px,#ff5f57 0 5px,transparent 6px),radial-gradient(circle at 26px 6px,#febc2e 0 5px,transparent 6px),radial-gradient(circle at 46px 6px,#28c840 0 5px,transparent 6px)}.post-content code,.reply-content code{background:rgba(91,108,255,.10);color:var(--primary);padding:2px 7px;border-radius:6px}html[data-theme="dark"] .post-content code,html[data-theme="dark"] .reply-content code{background:rgba(124,140,255,.16);color:#aab4ff}.post-content blockquote,.reply-content blockquote{margin:14px 0;padding:12px 16px;background:rgba(91,108,255,.06);border-left:3px solid var(--primary);border-radius:8px;color:var(--muted)}html[data-theme="dark"] .post-content blockquote,html[data-theme="dark"] .reply-content blockquote{background:rgba(124,140,255,.10)}.post-content table,.reply-content table{border:1px solid var(--border);font-size:14px}.post-content th,.reply-content th{background:rgba(91,108,255,.08);font-weight:700}html[data-theme="dark"] .post-content th,html[data-theme="dark"] .reply-content th{background:rgba(124,140,255,.12)}.post-content tbody tr:nth-child(even) td,.reply-content tbody tr:nth-child(even) td{background:rgba(91,108,255,.03)}.post-content hr,.reply-content hr{border:none;height:2px;background:linear-gradient(90deg,transparent,rgba(91,108,255,.45),transparent);border-radius:2px;margin:20px 0}.post-content li::marker,.reply-content li::marker{color:var(--primary)}.post-title{background:linear-gradient(var(--primary),var(--primary)) no-repeat 0 100% / 0 2px;transition:background-size .25s}.post-title:hover{background-size:100% 2px}.profile-card{position:relative;overflow:hidden}.profile-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.profile-stats span{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:var(--bg-deep);border:1px solid var(--border-light);border-radius:var(--radius-full);color:var(--muted);font-size:12.5px;font-weight:600}html[data-theme="dark"] .profile-stats span{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.10)}.p-stat::before,.profile-vip-line::before,.growth-line::before,.email-label::before{content:'';width:7px;height:7px;border-radius:50%;flex-shrink:0}.p-stat::before{background:var(--muted)}.p-points::before{background:var(--primary-gradient)}.p-coins::before{background:linear-gradient(135deg,#f7b733,#fc4a1a)}.p-streak::before{background:linear-gradient(135deg,#22c55e,#0d9488)}.p-posts::before{background:linear-gradient(135deg,#3b82f6,#6366f1)}.p-replies::before{background:linear-gradient(135deg,#8b5cf6,#d946ef)}.p-likes::before{background:linear-gradient(135deg,#fb7185,#f43f5e)}.p-pins::before{background:linear-gradient(135deg,#f59e0b,#f97316)}.p-shares::before{background:linear-gradient(135deg,#34d399,#0ea5e9)}.profile-vip-line::before{background:linear-gradient(135deg,#f7b733,#f59e0b);box-shadow:0 0 5px rgba(247,183,51,.7)}.growth-line::before{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.email-label::before{background:var(--primary)}.profile-signature{margin-top:10px;padding:10px 14px;background:rgba(91,108,255,.06);border-left:3px solid var(--primary);border-radius:8px;color:var(--text);font-size:13px}html[data-theme="dark"] .profile-signature{background:rgba(124,140,255,.10)}.verify-banner::before{content:'!';width:18px;height:18px;border-radius:50%;background:#fff;color:#b45309;font-weight:900;font-size:13px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 3px rgba(245,158,11,.22);flex-shrink:0}.msg-head-icon{display:inline-flex;width:22px;height:16px;border-radius:4px;background:var(--primary-gradient);position:relative;flex-shrink:0;box-shadow:0 2px 6px rgba(91,108,255,.35)}.msg-head-icon::before{content:'';position:absolute;left:50%;top:0;transform:translateX(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid rgba(255,255,255,.92)}.msg-bubble-icon{display:inline-block;width:26px;height:20px;border-radius:7px 7px 7px 2px;background:var(--primary-gradient);box-shadow:0 2px 8px rgba(91,108,255,.35)}.msg-card-head,.msg-detail-head{background:linear-gradient(135deg,rgba(91,108,255,.08),rgba(91,108,255,.02));border-bottom:1px solid var(--border-light)}html[data-theme="dark"] .msg-card-head,html[data-theme="dark"] .msg-detail-head{background:linear-gradient(135deg,rgba(124,140,255,.10),rgba(124,140,255,.03))}.unread-tag{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:var(--radius-full);background:rgba(91,108,255,.12);color:var(--primary);font-size:11px;font-weight:700}.unread-tag::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--primary);animation:unreadPulse 1.6s ease-in-out infinite}@keyframes unreadPulse{0%,100%{box-shadow:0 0 0 0 rgba(91,108,255,.5)}50%{box-shadow:0 0 0 4px rgba(91,108,255,0)}}html[data-theme="dark"] .unread-tag{background:rgba(124,140,255,.18);color:#aab4ff}.editor-toolbar{background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid rgba(255,255,255,.65);box-shadow:0 4px 16px rgba(50,65,120,.08),inset 0 1px 0 rgba(255,255,255,.8)}.editor-btn:hover{background:rgba(91,108,255,.10);color:var(--primary)}.editor-btn.open{background:var(--primary-gradient);color:#fff;box-shadow:0 2px 8px rgba(91,108,255,.35)}.editor-sep{background:rgba(120,130,170,.18)}html[data-theme="dark"] .editor-toolbar{background:rgba(23,28,52,.72);border-bottom-color:rgba(255,255,255,.08);box-shadow:0 4px 16px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06)}html[data-theme="dark"] .editor-btn:hover{background:rgba(124,140,255,.14);color:#aab4ff}.editor-menu{background:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);border:1px solid rgba(255,255,255,.65);box-shadow:0 12px 32px rgba(50,65,120,.18)}html[data-theme="dark"] .editor-menu{background:rgba(23,28,52,.92);border-color:rgba(255,255,255,.10)}.toolbar-center{background:linear-gradient(135deg,rgba(91,108,255,.10),rgba(91,108,255,.03));border:1px solid rgba(91,108,255,.18);border-radius:var(--radius);padding:18px 22px;margin-bottom:var(--space);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toolbar-center h1{font-size:20px;font-weight:800;margin:0}.result-count{display:inline-block;padding:2px 10px;border-radius:var(--radius-full);background:rgba(91,108,255,.12);color:var(--primary);font-size:13px;font-weight:700}html[data-theme="dark"] .toolbar-center{background:linear-gradient(135deg,rgba(124,140,255,.12),rgba(124,140,255,.04));border-color:rgba(124,140,255,.22)}html[data-theme="dark"] .result-count{background:rgba(124,140,255,.18);color:#aab4ff}mark{background:rgba(245,200,60,.45);color:inherit;padding:0 2px;border-radius:3px}html[data-theme="dark"] mark{background:rgba(245,200,60,.30)}.hide-icon{display:inline-flex;width:15px;height:12px;border-radius:3px;background:var(--primary-gradient);position:relative;flex-shrink:0;vertical-align:-1px}.hide-icon::before{content:'';position:absolute;top:-6px;left:2.5px;width:8px;height:6px;border:2px solid #7c8cff;border-bottom:none;border-radius:5px 5px 0 0}html[data-theme="dark"] .hide-icon::before{border-color:#9aa6ff}.cat-vip-lock{display:inline-flex;width:13px;height:10px;border-radius:2.5px;background:linear-gradient(135deg,#f7b733,#f59e0b);position:relative;flex-shrink:0;vertical-align:middle;font-size:0}.cat-vip-lock::before{content:'';position:absolute;top:-5px;left:2px;width:7px;height:5px;border:1.8px solid #f7b733;border-bottom:none;border-radius:4px 4px 0 0}.cat-vip-lock.cat-lock-post{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#fb7185,#f43f5e)}.cat-vip-lock.cat-lock-post::before{content:'';position:absolute;inset:0;width:auto;height:auto;border:none;border-radius:50%;background:linear-gradient(45deg,transparent 43%,#fff 43% 57%,transparent 57%)}.checkin-icon{width:54px;height:46px;border-radius:10px;background:var(--primary-gradient);position:relative;flex-shrink:0;box-shadow:0 4px 14px rgba(91,108,255,.35)}.checkin-icon::before{content:'';position:absolute;top:-6px;left:13px;width:4px;height:11px;border-radius:2px;background:#aab4ff;box-shadow:24px 0 0 #aab4ff}.checkin-icon::after{content:'';position:absolute;left:17px;top:14px;width:20px;height:11px;border-left:3.5px solid #fff;border-bottom:3.5px solid #fff;transform:rotate(-45deg)}.forgot-icon{width:44px;height:44px;margin:0 auto;border-radius:12px;background:var(--primary-gradient);position:relative;box-shadow:0 6px 18px rgba(91,108,255,.35)}.forgot-icon::before{content:'';position:absolute;top:9px;left:8px;width:11px;height:11px;border:3px solid #fff;border-radius:50%}.forgot-icon::after{content:'';position:absolute;top:20px;left:18px;width:17px;height:3px;border-radius:2px;background:#fff;box-shadow:8px 5px 0 -1px #fff;transform:rotate(35deg)}.nf-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:20px;background:var(--primary-gradient);position:relative;box-shadow:0 8px 24px rgba(91,108,255,.35)}.nf-icon::before{content:'?';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:34px;font-weight:900}html[data-theme="dark"] .widget-author-name,html[data-theme="dark"] .widget-author-name>a{color:#e6ebfb}html[data-theme="dark"] .widget-author-uid{color:#8f9bc0}html[data-theme="dark"] .lv-badge.lv1{background:rgba(160,175,220,.22);color:#c3cce6}html[data-theme="dark"] .lv-badge.lv2{background:rgba(34,197,94,.22);color:#6ee7a0}html[data-theme="dark"] .lv-badge.lv3{background:rgba(124,140,255,.24);color:#b4beff}html[data-theme="dark"] .lv-badge.lv4{background:rgba(245,158,11,.24);color:#fcd34d}html[data-theme="dark"] .lv-badge.lv6{background:rgba(244,114,182,.22);color:#f9a8d4}html[data-theme="dark"] .lv-badge.lv7{background:rgba(34,211,238,.22);color:#67e8f9}html[data-theme="dark"] .lv-badge.lv8{background:rgba(168,85,247,.24);color:#d8b4fe}html[data-theme="dark"] .lv-badge.lv9{background:rgba(239,68,68,.24);color:#fca5a5}.shop-header{background:linear-gradient(135deg,rgba(91,108,255,.10),rgba(91,108,255,.03));border:1px solid rgba(91,108,255,.18)}html[data-theme="dark"] .shop-header{background:linear-gradient(135deg,rgba(124,140,255,.12),rgba(124,140,255,.04));border-color:rgba(124,140,255,.22)}.balance-item{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.65);border-radius:var(--radius);box-shadow:0 2px 8px rgba(50,65,120,.06)}.balance-label{font-size:12px;color:var(--muted);font-weight:600}.balance-value{display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}.balance-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.dot-coins{background:linear-gradient(135deg,#f7b733,#fc4a1a);box-shadow:0 0 5px rgba(247,183,51,.6)}.dot-cards{background:var(--primary-gradient)}.dot-topup{background:linear-gradient(135deg,#f59e0b,#f97316)}.dot-parse{background:linear-gradient(135deg,#22c55e,#0d9488)}html[data-theme="dark"] .balance-item{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.recharge-balance{display:inline-block;padding:2px 12px;border-radius:var(--radius-full);background:rgba(91,108,255,.12);color:var(--primary);font-weight:800}html[data-theme="dark"] .recharge-balance{background:rgba(124,140,255,.18);color:#aab4ff}.rank-item:nth-child(1) .rank-num{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;box-shadow:0 2px 8px rgba(245,158,11,.45)}.rank-item:nth-child(2) .rank-num{background:linear-gradient(135deg,#cbd5e1,#94a3b8);color:#fff;box-shadow:0 2px 8px rgba(148,163,184,.45)}.rank-item:nth-child(3) .rank-num{background:linear-gradient(135deg,#f4a878,#d97706);color:#fff;box-shadow:0 2px 8px rgba(217,119,6,.4)}.site-footer .container{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.checkin-card{background:linear-gradient(135deg,rgba(91,108,255,.10),rgba(91,108,255,.02)),var(--card-bg);background-blend-mode:normal}html[data-theme="dark"] .checkin-card{background:linear-gradient(135deg,rgba(124,140,255,.10),rgba(124,140,255,.02)),var(--card-bg)}.reward-item{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.65);border-radius:var(--radius);box-shadow:0 2px 10px rgba(50,65,120,.06)}.reward-label{font-size:12.5px;color:var(--muted);font-weight:600}.reward-value{font-size:15px;font-weight:800;color:var(--primary)}.reward-progress{padding:2px 10px;border-radius:var(--radius-full);background:rgba(91,108,255,.10);color:var(--primary);font-size:11.5px;font-weight:700}html[data-theme="dark"] .reward-item{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}html[data-theme="dark"] .reward-progress{background:rgba(124,140,255,.16);color:#aab4ff}.admin-table th,.module-table th,.install-table th{background:#eef1f8;background-clip:padding-box;color:#4a5578;font-weight:700}html[data-theme="dark"] .admin-table th,html[data-theme="dark"] .module-table th,html[data-theme="dark"] .install-table th{background:#232b4a;color:#aeb8d8}.medal{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;color:#fff;font-size:12px;font-weight:800}.medal-gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 2px 6px rgba(245,158,11,.45)}.medal-silver{background:linear-gradient(135deg,#cbd5e1,#94a3b8);box-shadow:0 2px 6px rgba(148,163,184,.45)}.medal-bronze{background:linear-gradient(135deg,#f4a878,#d97706);box-shadow:0 2px 6px rgba(217,119,6,.4)}@media (max-width:640px){.admin-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;table-layout:auto}.profile-stats>.growth-line{flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;word-break:normal}.profile-stats>.growth-line::-webkit-scrollbar{display:none}.cat-sub-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:center;padding:10px 14px}.cat-sub-nav::-webkit-scrollbar{display:none}.cat-child{flex-shrink:0;display:inline-flex;align-items:center}.cat-child .cat-count{display:inline-flex;align-items:center}}.auth-pop{background:rgba(255,255,255,.78);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.6);box-shadow:0 12px 48px rgba(91,108,255,.18),0 2px 8px rgba(50,65,120,.08)}html[data-theme="dark"] .auth-pop{background:rgba(28,35,60,.82);border:1px solid rgba(124,140,255,.18);box-shadow:0 12px 48px rgba(0,0,0,.4),0 2px 8px rgba(0,0,0,.2)}.reply-item.reply-sub{margin-left:40px;background:rgba(91,108,255,.035);border-left:3px solid transparent;border-image:linear-gradient(180deg,#5b6cff,#8b5cf6) 1;border-radius:var(--radius-sm);padding:12px 16px}.reply-item.reply-sub .reply-content{font-size:13.5px;line-height:1.65}.reply-item.reply-sub .reply-head .author{font-size:12.5px}.pagination .current{background:linear-gradient(135deg,#5b6cff,#6d5dff);color:#fff;border-color:transparent;box-shadow:0 3px 10px rgba(91,108,255,.35)}.pagination a,.pagination span{transition:all .2s ease}.pagination a:hover{transform:translateY(-1px);box-shadow:0 3px 8px rgba(91,108,255,.15)}.settings-card,.invite-card{background:rgba(255,255,255,.75);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.5);border-radius:var(--radius);box-shadow:0 2px 10px rgba(50,65,120,.05)}html[data-theme="dark"] .settings-card,html[data-theme="dark"] .invite-card{background:rgba(28,35,60,.75);border:1px solid rgba(124,140,255,.12)}.invite-code{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(91,108,255,.08);border:1px dashed rgba(91,108,255,.35);border-radius:999px;font-family:'SF Mono',Consolas,monospace;font-size:14px;font-weight:700;color:var(--primary);letter-spacing:2px;user-select:all}.nf-wrap{text-align:center;padding:60px 20px;background:rgba(255,255,255,.65);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.5);box-shadow:0 8px 32px rgba(91,108,255,.1);position:relative;overflow:hidden}.nf-wrap::before{content:'';position:absolute;inset:-40%;background:radial-gradient(circle at 30% 20%,rgba(91,108,255,.12),transparent 50%),radial-gradient(circle at 70% 80%,rgba(139,92,246,.1),transparent 50%);pointer-events:none}html[data-theme="dark"] .nf-wrap{background:rgba(28,35,60,.75);border:1px solid rgba(124,140,255,.15)}.nf-wrap>*{position:relative;z-index:1}.lightbox-overlay{background:rgba(10,15,30,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.lightbox-img{box-shadow:0 24px 80px rgba(0,0,0,.5);border-radius:12px}.admin-form .btn-primary,.toolbar-actions .btn-primary{background:linear-gradient(135deg,#5b6cff,#6d5dff);border:none;color:#fff;box-shadow:0 4px 14px rgba(91,108,255,.35);transition:all .2s ease}.admin-form .btn-primary:hover,.toolbar-actions .btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(91,108,255,.45)}.admin-form .btn-secondary,.toolbar-actions .btn-secondary{background:rgba(255,255,255,.7);backdrop-filter:blur(8px);border:1px solid var(--border);color:var(--text-secondary);transition:all .2s ease}.admin-form .btn-secondary:hover,.toolbar-actions .btn-secondary:hover{background:rgba(255,255,255,.9);border-color:var(--primary);color:var(--primary)}html[data-theme="dark"] .admin-form .btn-secondary,html[data-theme="dark"] .toolbar-actions .btn-secondary{background:rgba(255,255,255,.06);border-color:rgba(124,140,255,.2);color:#aeb8d8}html[data-theme="dark"] .admin-form .btn-secondary:hover,html[data-theme="dark"] .toolbar-actions .btn-secondary:hover{background:rgba(124,140,255,.14);border-color:rgba(124,140,255,.4);color:#c5cde8}html[data-theme="dark"] .admin-form .btn-primary,html[data-theme="dark"] .toolbar-actions .btn-primary{background:linear-gradient(135deg,#6d7cff,#7c6dff);border:none;color:#fff;box-shadow:0 4px 14px rgba(109,124,255,.35)}.breadcrumb a{position:relative;padding:2px 6px;border-radius:6px;transition:all .2s ease}.breadcrumb a:hover{background:rgba(91,108,255,.1);color:var(--primary)}html[data-theme="dark"] .breadcrumb a:hover{background:rgba(124,140,255,.14)}.pay-content-box{position:relative;overflow:hidden;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 20px rgba(91,108,255,.12)}.pay-content-box::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 30%,rgba(91,108,255,.08),transparent 60%);pointer-events:none}.pay-content-box .pay-lock{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(255,255,255,.6);border-radius:999px;border:1px solid rgba(139,148,255,.35)}.pay-content-box .pay-lock::before{content:'';width:18px;height:18px;background:linear-gradient(135deg,#5b6cff,#8b5cf6);border-radius:4px;position:relative;box-shadow:0 2px 6px rgba(91,108,255,.4)}.pay-content-box .pay-lock::after{content:'';position:absolute;width:8px;height:8px;border:1.5px solid #fff;border-radius:50%;top:3px;left:5px}html[data-theme="dark"] .pay-content-box{background:linear-gradient(135deg,rgba(91,108,255,.12),rgba(139,92,246,.12));border-color:rgba(139,148,255,.4);color:#c5cde8}html[data-theme="dark"] .pay-content-box .pay-lock{background:rgba(28,35,60,.6);border-color:rgba(139,148,255,.4);color:#aeb8d8}.hide-content-box{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 20px rgba(91,108,255,.08)}.hide-content-box .hide-icon{width:28px;height:28px;background:linear-gradient(135deg,#5b6cff,#8b5cf6);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:14px;box-shadow:0 2px 8px rgba(91,108,255,.35)}.install-wrap{max-width:560px;margin:40px auto;background:rgba(255,255,255,.75);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.6);box-shadow:0 12px 40px rgba(91,108,255,.12);padding:36px 40px}html[data-theme="dark"] .install-wrap{background:rgba(28,35,60,.82);border:1px solid rgba(124,140,255,.18);box-shadow:0 12px 40px rgba(0,0,0,.3)}.install-step-title{font-size:20px;font-weight:800;color:var(--text);margin-bottom:18px;display:flex;align-items:center;gap:10px}.install-step-title::before{content:'';width:4px;height:20px;background:linear-gradient(180deg,#5b6cff,#8b5cf6);border-radius:2px}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header{background:#fff}html[data-theme="dark"] .site-header{background:#1c233c}.editor-toolbar{background:#fff}.auth-pop{background:#fff}.breadcrumb,.settings-card,.invite-card,.pay-content-box,.hide-content-box,.install-wrap,.nf-wrap,.lightbox-overlay{backdrop-filter:none;-webkit-backdrop-filter:none}}.post-views::before,.reply-count-mini::before{width:14px;height:14px;opacity:.9}.post-meta .post-views,.post-meta .reply-count-mini{color:var(--text-secondary)}.stats-sep{display:inline-block;width:1px;height:14px;margin:0 8px;background:rgba(91,108,255,.25);vertical-align:middle;color:transparent;overflow:hidden}html[data-theme="dark"] .stats-sep{background:rgba(124,140,255,.3)}.widget-empty{text-align:center;padding:24px 8px 16px;font-size:13px;color:var(--muted)}.widget-empty::before{content:'';display:block;width:46px;height:46px;margin:0 auto 10px;border-radius:50%;border:1px dashed rgba(91,108,255,.40);background:radial-gradient(circle at 30% 30%,rgba(91,108,255,.14),rgba(91,108,255,.03) 55%)}html[data-theme="dark"] .widget-empty::before{border-color:rgba(124,140,255,.45);background:radial-gradient(circle at 30% 30%,rgba(124,140,255,.18),rgba(124,140,255,.04) 55%)}html[data-theme="dark"] .card.empty::before{border-color:rgba(124,140,255,.45);background:radial-gradient(circle at 30% 30%,rgba(124,140,255,.18),rgba(124,140,255,.04) 55%)}.cat-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:10.5px;font-weight:700;line-height:1;background:rgba(91,108,255,.10);color:var(--primary);font-family:var(--sans);font-variant-numeric:tabular-nums;opacity:1;transition:all .2s}.cat-item:hover .cat-count{background:rgba(91,108,255,.18);color:var(--primary-dark)}.cat-item.active .cat-count{background:rgba(255,255,255,.25);color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12)}.cat-child .cat-count{background:rgba(91,108,255,.08);color:var(--primary);font-size:10px;height:16px;min-width:16px;padding:0 4px}.cat-child:hover .cat-count{background:rgba(91,108,255,.18)}.cat-child.active{background:linear-gradient(135deg,#7c8cff,#a6b4ff);color:#fff;border-color:transparent;box-shadow:0 3px 10px rgba(124,140,255,.30),inset 0 1px 0 rgba(255,255,255,.40)}html[data-theme="dark"] .cat-child.active{background:linear-gradient(135deg,#6d7cff,#8b7cff);color:#fff;box-shadow:0 3px 12px rgba(109,124,255,.40),inset 0 1px 0 rgba(255,255,255,.18)}.cat-child.active .cat-count{background:rgba(255,255,255,.28);color:#fff;opacity:1;box-shadow:0 1px 3px rgba(0,0,0,.10)}html[data-theme="dark"] .cat-count{background:rgba(124,140,255,.18);color:var(--primary-light)}html[data-theme="dark"] .cat-item:hover .cat-count{background:rgba(124,140,255,.30)}html[data-theme="dark"] .cat-child .cat-count{background:rgba(124,140,255,.14)}html[data-theme="dark"] .cat-child:hover .cat-count{background:rgba(124,140,255,.28)}.stats-left strong{font-family:var(--sans);font-size:14px;font-weight:800;font-variant-numeric:tabular-nums;background:linear-gradient(120deg,var(--primary) 30%,#6d7bff 80%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--primary)}html[data-theme="dark"] .stats-left strong{background:linear-gradient(120deg,var(--primary-light) 30%,#b4beff 80%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.stats-newuser a{background:linear-gradient(120deg,#10b981 30%,#059669 80%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}html[data-theme="dark"] .stats-newuser a{background:linear-gradient(120deg,#34d399 30%,#10b981 80%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.announce-label{position:relative}.announce-label::before{content:'';width:10px;height:10px;margin-right:6px;display:inline-block;background:radial-gradient(circle at 50% 50%,#fff 2.5px,transparent 2.8px),linear-gradient(90deg,transparent 0 3px,#fff 3px 3.6px,transparent 3.6px);border-radius:2px;position:relative}.announce-label::before{width:0;height:0;margin-right:7px;background:none;border-style:solid;border-width:5px 0 5px 8px;border-color:transparent transparent transparent #fff;border-radius:0;position:relative}.announce-label::after{content:'';position:absolute;left:7px;top:50%;width:3px;height:3px;border-radius:50%;background:#fff;transform:translateY(-50%);box-shadow:4px 0 0 #fff,8px 0 0 #fff;animation:announceDing 2.4s ease-in-out infinite}@keyframes announceDing{0%,100%{opacity:1;transform:translateY(-50%) scale(1)}50%{opacity:.5;transform:translateY(-50%) scale(.7)}}.list-sort{box-shadow:inset 0 1px 0 rgba(255,255,255,.7);border:1px solid var(--border-light)}.list-sort a{transition:all .22s ease}.list-sort a.on{background:var(--card-bg);color:var(--text);box-shadow:0 2px 6px rgba(91,108,255,.14),inset 0 1px 0 rgba(255,255,255,.8);transform:translateY(-1px);font-weight:700}html[data-theme="dark"] .list-sort{box-shadow:inset 0 1px 0 rgba(255,255,255,.06);border-color:rgba(124,140,255,.18)}html[data-theme="dark"] .list-sort a.on{box-shadow:0 2px 8px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.08);background:rgba(28,35,60,.95)}.link-item{position:relative;padding:9px 6px 9px 16px;background:var(--primary-bg);border:1px solid rgba(91,108,255,.18);color:var(--text-secondary);font-weight:600;transition:all .22s ease}.link-item::before{content:'';position:absolute;left:6px;top:50%;width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,#5b6cff,#8b5cf6);transform:translateY(-50%);flex-shrink:0}.link-item:hover{background:rgba(91,108,255,.12);border-color:var(--primary);color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 14px rgba(91,108,255,.22)}.link-item:hover::before{box-shadow:0 0 8px rgba(91,108,255,.6);background:linear-gradient(135deg,#8b5cf6,#5b6cff)}html[data-theme="dark"] .link-item{background:rgba(124,140,255,.10);border-color:rgba(124,140,255,.22);color:#b3bcd4}html[data-theme="dark"] .link-item:hover{background:rgba(124,140,255,.18);border-color:var(--primary-light);color:var(--primary-light);box-shadow:0 4px 14px rgba(0,0,0,.4)}html[data-theme="dark"] .link-item::before{background:linear-gradient(135deg,#8b5cf6,#a5b0ff)}.pagination .page-ellipsis{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:var(--bg-deep);border:1px dashed var(--border-light);color:var(--muted);font-size:15px;letter-spacing:2px;user-select:none}.pagination .page-info{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;max-width:max-content;margin:0 0 0 10px;text-align:center;min-height:0;padding:4px 12px;border-radius:999px;background:var(--bg-deep);border:1px solid var(--border-light);color:var(--muted);font-size:12px;line-height:1.5;font-weight:600;font-family:var(--sans);letter-spacing:.3px}.pagination .page-info strong{color:var(--primary);font-weight:700}html[data-theme="dark"] .pagination .page-ellipsis{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08);color:#8290ad}html[data-theme="dark"] .pagination .page-info{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}.nav-pulse::after{top:3px;right:3px;width:7px;height:7px;box-shadow:0 0 0 0 rgba(244,63,94,.55),0 0 4px rgba(244,63,94,.7);animation:navPulseRing 1.8s ease-out infinite}@keyframes navPulseRing{0%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(244,63,94,.55),0 0 4px rgba(244,63,94,.7)}70%{opacity:.7;transform:scale(.95);box-shadow:0 0 0 6px rgba(244,63,94,0),0 0 4px rgba(244,63,94,.5)}100%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(244,63,94,0),0 0 4px rgba(244,63,94,.7)}}.post-title{background:linear-gradient(var(--primary),var(--primary)) no-repeat 0 100% / 0 2px,linear-gradient(110deg,transparent 30%,rgba(139,148,255,.35) 50%,transparent 70%) no-repeat -100% 100% / 0 2px;transition:background-size .35s cubic-bezier(.22,.9,.36,1)}.post-title:hover{background-size:100% 2px,220% 2px;animation:titleShine .55s ease both}@keyframes titleShine{from{background-position:0 100%,-60% 100%}to{background-position:0 100%,120% 100%}}.post-item{border-left:2px solid rgba(91,108,255,.18);transition:border-color .22s,box-shadow .22s,transform .22s}.post-item:hover{border-left-color:var(--primary);box-shadow:0 6px 22px rgba(91,108,255,.14),0 0 0 1px rgba(139,148,255,.22),inset 0 1px 0 rgba(255,255,255,.75)}html[data-theme="dark"] .post-item{border-left-color:rgba(124,140,255,.22)}html[data-theme="dark"] .post-item:hover{border-left-color:var(--primary-light)}.rank-tab.active{background:var(--primary-gradient);color:#fff;font-weight:700;box-shadow:0 2px 8px rgba(91,108,255,.32)}.rank-tab{font-size:12px;color:var(--muted);padding:4px 12px;border-radius:999px;cursor:pointer;background:var(--bg-deep);transition:all .22s ease;user-select:none;border:1px solid var(--border-light);font-weight:600}.rank-tab:hover{color:var(--primary);background:var(--primary-bg);border-color:var(--primary-light);transform:translateY(-1px)}html[data-theme="dark"] .rank-tab{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08);color:#9db0d4}html[data-theme="dark"] .rank-tab:hover{color:var(--primary-light);background:rgba(124,140,255,.14)}html[data-theme="dark"] .rank-tab.active{background:linear-gradient(135deg,#6d7cff,#7c6dff);color:#fff;box-shadow:0 2px 8px rgba(109,124,255,.3)}.rank-item{position:relative;padding:8px 0 8px 8px;border-bottom:1px dashed var(--border-light);transition:all .18s ease}.rank-item:last-child{border-bottom:none}.rank-item::before{content:'';position:absolute;left:0;top:50%;width:2px;height:0;border-radius:1px;background:var(--primary-gradient);transform:translateY(-50%);transition:height .22s ease}.rank-item:hover{background:rgba(91,108,255,.06);padding-left:12px}.rank-item:hover::before{height:60%}html[data-theme="dark"] .rank-item:hover{background:rgba(124,140,255,.10)}.widget-author-bg{background:radial-gradient(circle at 85% 20%,rgba(255,180,200,.55),transparent 50%),radial-gradient(circle at 15% 85%,rgba(139,148,255,.40),transparent 55%),linear-gradient(135deg,#6d7bff,#a878ff);box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}html[data-theme="dark"] .widget-author-bg{background:radial-gradient(circle at 85% 20%,rgba(139,148,255,.45),transparent 55%),linear-gradient(135deg,#2b3350,#1c2333);box-shadow:none}.widget-author-avatar .avatar,.widget-author-avatar .avatar-default{border:3px solid #fff;box-shadow:0 2px 12px rgba(91,108,255,.35)}html[data-theme="dark"] .widget-author-avatar .avatar,html[data-theme="dark"] .widget-author-avatar .avatar-default{border-color:#1c233c;box-shadow:0 2px 12px rgba(0,0,0,.5)}.site-footer{position:relative;padding:22px 0 18px;margin-top:24px}.site-footer::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:260px;height:2px;background:linear-gradient(90deg,transparent,var(--primary) 30%,var(--primary) 70%,transparent);opacity:.55;border-radius:2px}.site-footer{background:linear-gradient(180deg,transparent,rgba(91,108,255,.08))}.site-footer .container{color:var(--muted)}.site-footer a{color:var(--text-secondary);transition:color .2s}.site-footer a:hover{color:var(--primary)}html[data-theme="dark"] .site-footer{background:linear-gradient(180deg,transparent,rgba(124,140,255,.10))}html[data-theme="dark"] .site-footer::before{background:linear-gradient(90deg,transparent,var(--primary-light) 30%,var(--primary-light) 70%,transparent)}.post-list{margin-top:6px}.post-list .post-item{margin-bottom:10px}.rf-pill{padding:4px 14px;border:1px solid var(--border-light);background:var(--bg-deep);color:var(--muted);font-weight:600;transition:all .18s ease}.rf-pill:hover{color:var(--primary);border-color:var(--primary-light);background:var(--primary-bg);transform:translateY(-1px)}.rf-pill.on{background:var(--primary-gradient);color:#fff;border-color:transparent;font-weight:700;box-shadow:0 2px 8px rgba(91,108,255,.30)}html[data-theme="dark"] .rf-pill{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08);color:#9db0d4}html[data-theme="dark"] .rf-pill:hover{color:var(--primary-light);background:rgba(124,140,255,.14);border-color:var(--primary-light)}html[data-theme="dark"] .rf-pill.on{background:linear-gradient(135deg,#6d7cff,#7c6dff);color:#fff;box-shadow:0 2px 8px rgba(109,124,255,.3)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.75}html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#8290ad;opacity:.8}.card>h2 + form>.btn-primary{margin-top:8px}@media (max-width:640px){.card>h2 + form>.btn-primary{width:auto}}.field select,.admin-table select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5l3.5 3.5 3.5-3.5' fill='none' stroke='%238290ad' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:11px;cursor:pointer}.field select{padding-right:34px}.admin-table select{padding-right:26px;background-position:right 8px center}html[data-theme="dark"] .field select,html[data-theme="dark"] .admin-table select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5l3.5 3.5 3.5-3.5' fill='none' stroke='%239db0d4' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.post-content video.video-portrait,.reply-content video.video-portrait{max-width:340px !important;margin-left:auto !important;margin-right:auto !important}.post-content .hls-wrap video,.reply-content .hls-wrap video,.post-content .videos-wrap video,.reply-content .videos-wrap video{max-width:100% !important;margin-left:0 !important;margin-right:0 !important}@media (max-width:640px){.post-content video.video-portrait,.reply-content video.video-portrait{max-width:280px !important}}.layout-with-sidebar{align-items:stretch}.sidebar{align-self:flex-start}.main-content{display:flex;flex-direction:column}.main-content .carousel{margin-top:auto;padding-top:24px}.main-content .carousel + .pagination{padding-top:0}@media (max-width:640px){.sidebar{align-self:stretch}.main-content .carousel{margin-top:0;padding-top:16px}}.carousel{position:relative;border-radius:16px;overflow:hidden;background:var(--card-bg);border:1px solid var(--border-light);box-shadow:var(--shadow)}.carousel-track{display:flex;transition:transform .55s cubic-bezier(.22,.61,.36,1);will-change:transform}.carousel-slide{position:relative;flex:0 0 100%;display:block;width:100%;height:230px}.carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.carousel-caption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;font-size:13px;font-weight:600;color:#fff;background:linear-gradient(transparent,rgba(15,23,42,.72));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s,background .25s,transform .25s;padding:0}.carousel:hover .carousel-arrow,.carousel-arrow:focus-visible{opacity:1}.carousel-arrow:hover{background:rgba(255,255,255,.45)}.carousel-prev{left:12px}.carousel-next{right:12px}.carousel-prev:hover{transform:translateY(-50%) translateX(-1px)}.carousel-next:hover{transform:translateY(-50%) translateX(1px)}.carousel-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px}.carousel-dot{width:7px;height:7px;border-radius:999px;background:rgba(255,255,255,.55);cursor:pointer;transition:width .3s,background .3s}.carousel-dot.active{width:20px;background:#fff}.carousel:has(.carousel-caption) .carousel-dots{bottom:34px}@media (max-width:640px){.carousel-slide{height:180px}.carousel-arrow{opacity:1;width:30px;height:30px;font-size:17px}.carousel-prev{left:8px}.carousel-next{right:8px}}@supports not ((backdrop-filter:blur(8px)) or (-webkit-backdrop-filter:blur(8px))){.carousel-arrow{background:rgba(30,41,59,.6);border-color:rgba(255,255,255,.25)}}.img-grid-wrap{position:relative;margin-top:auto;padding-top:24px}.img-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.img-card{position:relative;display:block;border-radius:14px;overflow:hidden;background:var(--card-bg);border:1px solid var(--border-light);box-shadow:var(--shadow);aspect-ratio:1/1;text-decoration:none;transition:transform .25s,box-shadow .25s}.img-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(15,23,42,.18)}.img-card img{width:100%;height:100%;object-fit:cover;display:block}.img-card-title{position:absolute;left:0;right:0;bottom:0;padding:28px 12px 10px;font-size:12px;font-weight:600;color:#fff;background:linear-gradient(transparent,rgba(15,23,42,.78));opacity:0;transition:opacity .25s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.img-card:hover .img-card-title{opacity:1}.img-grid-pager{position:absolute;top:34px;right:10px;display:flex;gap:8px;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;z-index:5}.img-grid-wrap:hover .img-grid-pager{opacity:1;visibility:visible}.pager-btn{width:36px;height:36px;border-radius:999px;border:none;background:rgba(91,108,255,.9);color:#fff;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(15,23,42,.25);transition:background .2s,transform .2s;padding:0}.pager-btn:hover:not(:disabled){background:#4353e8;transform:scale(1.06)}.pager-btn:disabled{opacity:.35;cursor:default}@media (hover:none){.img-grid-pager{opacity:1;visibility:visible}}@media (max-width:900px){.img-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.img-grid{grid-template-columns:repeat(2,1fr);gap:10px}.img-grid-wrap{padding-top:16px}.img-grid-pager{top:26px;right:6px}}.lf-dlg-mask{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(15,23,42,.48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.lf-dlg{display:flex;flex-direction:column;width:min(var(--lf-dlg-w,760px),96vw);height:min(var(--lf-dlg-h,660px),88vh);max-height:92vh;background:var(--card-bg-solid,#fff);color:var(--text,#1c2333);border:1px solid var(--border,rgba(100,115,160,.18));border-radius:14px;box-shadow:0 18px 50px rgba(15,23,42,.32);overflow:hidden}.lf-dlg-head{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:11px 12px 11px 16px;border-bottom:1px solid var(--border,rgba(100,115,160,.18));background:var(--card-bg,rgba(255,255,255,.04))}.lf-dlg-title{flex:1 1 auto;min-width:0;font-size:15px;font-weight:700;line-height:1.4;color:var(--text,#1c2333);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lf-dlg-close{flex:0 0 auto;width:30px;height:30px;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;background:transparent;color:var(--muted,#7c86a2);font-size:20px;line-height:1;font-family:inherit;transition:background .18s,color .18s}.lf-dlg-close:hover{background:rgba(120,130,160,.16);color:var(--text,#1c2333)}.lf-dlg-body{position:relative;flex:1 1 auto;min-height:0}.lf-dlg-frame{width:100%;height:100%;border:0;display:block;background:transparent}.lf-dlg-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--muted,#7c86a2);pointer-events:none}.lf-dlg-foot{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:9px 14px;border-top:1px solid var(--border,rgba(100,115,160,.18));background:var(--card-bg,rgba(255,255,255,.04))}.lf-dlg-tip{flex:1 1 auto;min-width:0;font-size:12px;line-height:1.5;color:var(--muted,#7c86a2)}.lf-dlg-done{flex:0 0 auto}@media (max-width:640px){.lf-dlg-mask{padding:0;align-items:stretch}.lf-dlg{width:100vw;height:100vh;height:100dvh;max-height:none;border:none;border-radius:0;box-shadow:none}.lf-dlg-foot{padding-bottom:calc(9px + env(safe-area-inset-bottom,0px))}.lf-dlg-head{padding:11px 10px 11px 14px}}.lf-lb-mask{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,23,42,.74);cursor:zoom-out}.lf-lb-img{max-width:92vw;max-height:88vh;cursor:default;border-radius:12px;background:#fff;padding:8px;box-shadow:0 18px 50px rgba(0,0,0,.42)}.imgdlg-mask{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(15,23,42,.48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.imgdlg{display:flex;flex-direction:column;width:min(560px,96vw);max-height:86vh;background:var(--card-bg-solid,#fff);color:var(--text,#1c2333);border:1px solid var(--border,rgba(100,115,160,.18));border-radius:14px;box-shadow:0 18px 50px rgba(15,23,42,.32);overflow:hidden}.imgdlg-head{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:8px 10px 0 12px;border-bottom:1px solid var(--border,rgba(100,115,160,.18));background:var(--card-bg,rgba(255,255,255,.04))}.imgdlg-tabs{flex:1 1 auto;display:flex;gap:2px;min-width:0;overflow-x:auto}.imgdlg-tab{appearance:none;border:none;background:transparent;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;line-height:1;color:var(--muted,#7c86a2);padding:12px 14px;border-bottom:2px solid transparent;white-space:nowrap;transition:color .18s,border-color .18s}.imgdlg-tab:hover{color:var(--text,#1c2333)}.imgdlg-tab.on{color:var(--primary,#5b6cff);border-bottom-color:var(--primary,#5b6cff)}.imgdlg-head .lf-dlg-close{margin-bottom:5px}.imgdlg-body{flex:1 1 auto;min-height:0;overflow:auto;padding:16px}.imgdlg-drop{border:2px dashed var(--border,rgba(100,115,160,.4));border-radius:12px;padding:30px 16px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.imgdlg-drop:hover,.imgdlg-drop.drag{border-color:var(--primary,#5b6cff);background:rgba(91,108,255,.07)}.imgdlg-drop-emoji{font-size:34px;line-height:1;margin-bottom:10px}.imgdlg-drop-title{font-size:15px;font-weight:600;color:var(--text,#1c2333);margin-bottom:6px}.imgdlg-drop-sub{font-size:12px;color:var(--muted,#7c86a2)}.imgdlg-url{display:flex;flex-direction:column;gap:10px}.imgdlg-input{width:100%;box-sizing:border-box;font-family:inherit;font-size:14px;color:var(--text,#1c2333);background:var(--card-bg,rgba(255,255,255,.04));border:1px solid var(--border,rgba(100,115,160,.4));border-radius:8px;padding:10px 12px;outline:none;transition:border-color .18s}.imgdlg-input:focus{border-color:var(--primary,#5b6cff)}.imgdlg-ok{align-self:flex-end}.imgdlg-tip{font-size:12px;line-height:1.6;color:var(--muted,#7c86a2)}.imgdlg-gal{display:flex;flex-direction:column;gap:10px}.imgdlg-frame{flex:1 1 auto;width:100%;min-height:330px;border:1px solid var(--border,rgba(100,115,160,.18));border-radius:10px;background:var(--card-bg-solid,#fff)}.imgdlg.imgdlg-embed{height:min(680px,86vh)}.imgdlg-embed .imgdlg-body{display:flex;flex-direction:column}.imgdlg-embed .imgdlg-body>div{flex:1 1 auto;min-height:0}.imgdlg-embed .imgdlg-frame{min-height:0}.imgdlg-dragover{position:absolute;inset:0;z-index:10;display:none;align-items:center;justify-content:center;background:rgba(37,99,235,.14);border-radius:inherit;pointer-events:none}.imgdlg-dragover-inner{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px 40px;border:3px dashed #2563eb;border-radius:14px;background:rgba(255,255,255,.94);color:#1d4ed8;box-shadow:0 10px 40px rgba(37,99,235,.25)}.imgdlg-dragover-inner b{font-size:19px}.imgdlg-dragover-inner span{font-size:12px;color:#475569}@media (max-width:640px){.imgdlg-mask{padding:0;align-items:stretch}.imgdlg{width:100vw;height:100vh;height:100dvh;max-height:none;border:none;border-radius:0}.imgdlg-head{padding:6px 8px 0 10px}.imgdlg-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none}.imgdlg-tabs::-webkit-scrollbar{display:none}.imgdlg-tab{font-size:13.5px;padding:11px 11px}.imgdlg-head .lf-dlg-close{margin-bottom:4px}.imgdlg.imgdlg-embed{height:100vh;height:100dvh}.imgdlg-embed .imgdlg-body{padding:0 0 env(safe-area-inset-bottom,0px);overflow:hidden}.imgdlg-embed .imgdlg-body .imgdlg-tip{padding:8px 10px 0}.imgdlg-embed .imgdlg-frame{min-height:0;border:none;border-radius:0}.imgdlg-drop{padding:26px 14px}.imgdlg-drop-emoji{font-size:30px;margin-bottom:8px}.imgdlg-drop-title{font-size:14.5px}.imgdlg-ok{align-self:stretch}}
/* ================= 2026-09-30 修复补丁 ================= */
/* 1) 详情页时间/浏览/评论药丸：背景与卡片同色，消除白底色差 */
.post-meta-sub .time,
.post-meta-sub .post-views,
.post-meta-sub .reply-count-mini { background:var(--card-bg); }
/* 2) 手机端取消压线：药丸回归行内排版，允许换行不挤爆屏幕 */
@media (max-width:767px) {
  .post-detail .post-meta-sub { height:auto; margin:0 0 12px; justify-content:flex-start; flex-wrap:wrap; }
  .post-detail .post-meta-sub .time,
  .post-detail .post-meta-sub .post-views,
  .post-detail .post-meta-sub .reply-count-mini { transform:none; background:transparent; padding:0; line-height:1.6; }
}
/* 3) 精华帖：DZ 同款橙色标题 + 橙色徽章 */
.post-list .post-item:has(.featured-tag) .post-title { color:#ff6600; }
.post-list .post-item:has(.featured-tag) .post-title:hover { color:#e65c00; }
html[data-theme="dark"] .post-list .post-item:has(.featured-tag) .post-title { color:#ff8533; }
.post-title-row .featured-tag, .post-detail .featured-tag { background:#fff3e6; color:#ff6600; border-color:rgba(255,102,0,.45); }
html[data-theme="dark"] .post-title-row .featured-tag, html[data-theme="dark"] .post-detail .featured-tag { background:rgba(255,102,0,.18); color:#ff8533; }

/* ================= 2026-09-30 修复补丁 v2 ================= */
/* 1) 桌面药丸改实底：完全盖住边框线，且与卡片视觉同色（浅色 #fcfdfe = 卡片 0.84 白叠页面底色的等效实色） */
.post-meta-sub .time,
.post-meta-sub .post-views,
.post-meta-sub .reply-count-mini { background:#fcfdfe; }
html[data-theme="dark"] .post-meta-sub .time,
html[data-theme="dark"] .post-meta-sub .post-views,
html[data-theme="dark"] .post-meta-sub .reply-count-mini { background:#1a2138; }
/* 2) 手机端：不换行，保持一行（药丸已不压线，透明底即可） */
@media (max-width:767px) {
  .post-detail .post-meta-sub { flex-wrap:nowrap; gap:10px; margin:0 0 12px; }
  .post-detail .post-meta-sub .time,
  .post-detail .post-meta-sub .post-views,
  .post-detail .post-meta-sub .reply-count-mini { background:transparent; white-space:nowrap; flex-shrink:0; }
}

/* ================= 2026-09-30 修复补丁 v3：彻底去线 ================= */
/* 药丸不再骑在分隔线上：去掉详情页 meta 行的下边框，时间/浏览/回复回归普通文字行，
   桌面手机统一——没有线，也就没有线缝和压线问题 */
.post-detail .post-meta { border-bottom:none; padding-bottom:0; }
.post-meta-sub { height:auto; transform:none; margin:0 0 14px; justify-content:flex-start; gap:12px; }
.post-meta-sub .time,
.post-meta-sub .post-views,
.post-meta-sub .reply-count-mini { transform:none; background:transparent; padding:0; line-height:1.7; white-space:nowrap; }

/* ================= 2026-09-30 修复补丁 v4：线保留，日期起覆盖 ================= */
/* 恢复原版分隔线（v3 曾拆除），药丸实底骑线、相互间距归零连成一整块，
   日期右侧（含浏览/回复）的线全部被药丸背景盖住——线只在日期左边可见。
   桌面与手机同一规则，均右对齐骑线。 */
.post-detail .post-meta { padding-bottom:14px; border-bottom:1px solid var(--border-light); }
.post-detail .post-meta-sub { height:0; justify-content:flex-end; gap:0; margin:0 0 18px; position:relative; z-index:1; }
.post-detail .post-meta-sub .time,
.post-detail .post-meta-sub .post-views,
.post-detail .post-meta-sub .reply-count-mini { transform:translateY(-50%); background:#fcfdfe; padding:0 6px; line-height:1.7; white-space:nowrap; flex-shrink:0; }
html[data-theme="dark"] .post-detail .post-meta-sub .time,
html[data-theme="dark"] .post-detail .post-meta-sub .post-views,
html[data-theme="dark"] .post-detail .post-meta-sub .reply-count-mini { background:#1a2138; }
/* 手机端同样规则：右对齐骑线实底（覆写 v1~v3 手机端的透明/换行方案） */
@media (max-width:767px) {
  .post-detail .post-meta-sub { height:0; flex-wrap:nowrap; justify-content:flex-end; gap:0; margin:0 0 18px; }
  .post-detail .post-meta-sub .time,
  .post-detail .post-meta-sub .post-views,
  .post-detail .post-meta-sub .reply-count-mini { transform:translateY(-50%); background:#fcfdfe; padding:0 6px; line-height:1.7; }
}

/* ================= 2026-09-30 搜索弹窗补丁 ================= */
/* 头部搜索改为弹窗式：触发键替换原 .search-form，桌面显示「🔍搜索」，手机端仅图标（logo+菜单同行） */
.search-trigger { display:inline-flex; align-items:center; gap:6px; background:transparent; border:0; color:var(--text); font-size:14px; cursor:pointer; padding:8px 10px; border-radius:999px; transition:.15s; flex-shrink:0; }
.search-trigger svg { width:17px; height:17px; display:block; }
.search-trigger:hover { background:rgba(91,108,255,.1); color:var(--primary); }
html[data-theme="dark"] .search-trigger:hover { background:rgba(91,108,255,.18); }
@media (max-width:767px) {
  .search-trigger { order:3; }
  .search-trigger .st-txt { display:none; }
  .search-trigger { padding:8px; }
}

/* 搜索弹窗（帖子/用户/Google/Bing 四页签 + 猜你想搜） */
.s-mod { position:fixed; inset:0; z-index:9999; display:flex; align-items:flex-start; justify-content:center; padding:12vh 16px 0; }
.s-mod[hidden] { display:none; }
.s-mod-mask { position:absolute; inset:0; background:rgba(15,23,42,.45); }
.s-mod-panel { position:relative; width:100%; max-width:600px; background:#fff; border-radius:16px; box-shadow:0 24px 64px rgba(15,23,42,.25); padding:20px; animation:sModIn .18s ease; }
html[data-theme="dark"] .s-mod-panel { background:#1c233c; }
@keyframes sModIn { from { opacity:0; transform:translateY(-10px) scale(.98); } to { opacity:1; transform:none; } }
.s-mod-x { position:absolute; top:14px; right:14px; width:32px; height:32px; border:0; background:transparent; color:#94a3b8; cursor:pointer; border-radius:8px; display:flex; align-items:center; justify-content:center; padding:0; }
.s-mod-x svg { width:20px; height:20px; }
.s-mod-x:hover { background:rgba(100,116,139,.12); color:var(--text); }
.s-mod-tabs { display:flex; gap:4px; background:rgba(100,116,139,.08); border-radius:12px; padding:4px; width:max-content; max-width:100%; margin-bottom:16px; }
.s-tab { border:0; background:transparent; color:#64748b; font-size:13px; padding:7px 16px; border-radius:9px; cursor:pointer; transition:.15s; }
html[data-theme="dark"] .s-tab { color:#8b95ad; }
.s-tab.is-on { background:#fff; color:var(--text); font-weight:600; box-shadow:0 1px 4px rgba(15,23,42,.12); }
html[data-theme="dark"] .s-tab.is-on { background:#2a3352; color:#e2e8f0; box-shadow:none; }
.s-mod-form { display:flex; align-items:center; gap:10px; border:2px solid var(--primary,#5b6cff); border-radius:14px; padding:6px 6px 6px 16px; background:#fff; }
html[data-theme="dark"] .s-mod-form { background:#232b47; }
.s-mod-form:focus-within { box-shadow:0 0 0 4px rgba(91,108,255,.15); }
.s-mag { width:18px; height:18px; color:#94a3b8; flex-shrink:0; }
#sInput { flex:1; min-width:0; border:0; outline:none; background:transparent; font-size:15px; color:var(--text); padding:8px 0; box-shadow:none !important; }
.s-go { flex-shrink:0; width:44px; height:40px; border:0; border-radius:10px; background:var(--primary,#2563eb); color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0; transition:.15s; }
.s-go svg { width:20px; height:20px; }
.s-go:hover { filter:brightness(1.1); }
.s-mod-user { margin-top:14px; display:flex; flex-direction:column; gap:6px; max-height:240px; overflow:auto; }
.s-mod-user[hidden] { display:none; }
.s-user-item { display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:10px; color:var(--text); text-decoration:none; font-size:14px; }
.s-user-item:hover { background:rgba(91,108,255,.08); text-decoration:none; }
.s-user-item img, .s-ava-fall { width:28px; height:28px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.s-ava-fall { background:var(--primary); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:13px; }
.s-user-loading, .s-user-empty { font-size:13px; color:#94a3b8; padding:6px 2px; }
.s-hot { margin-top:16px; }
.s-hot-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.s-hot-title { font-size:13px; color:#94a3b8; }
.s-hot-refresh { border:0; background:transparent; color:#94a3b8; cursor:pointer; width:26px; height:26px; display:flex; align-items:center; justify-content:center; border-radius:6px; padding:0; }
.s-hot-refresh svg { width:15px; height:15px; }
.s-hot-refresh:hover { color:var(--primary); background:rgba(91,108,255,.1); }
.s-hot-tags { display:flex; flex-wrap:wrap; gap:8px; }
.s-hot-tag { border:1px solid var(--border-light,#e2e8f0); background:transparent; color:var(--text); font-size:13px; padding:6px 14px; border-radius:999px; cursor:pointer; transition:.15s; }
.s-hot-tag:hover { border-color:var(--primary); color:var(--primary); background:rgba(91,108,255,.06); }
html[data-theme="dark"] .s-hot-tag { border-color:rgba(255,255,255,.14); }
html[data-theme="dark"] .s-hot-tag:hover { border-color:var(--primary); }

/* 视频解析头部入口：桌面文字链（对齐导航观感），手机端仅图标（基础规则在前，媒体查询覆盖在后） */
.m-douyin { display:inline-flex; align-items:center; gap:6px; padding:8px 10px; font-size:14px; color:var(--text); text-decoration:none; border-radius:999px; transition:.15s; flex-shrink:0; }
.m-douyin svg { display:none; width:17px; height:17px; }
.m-douyin:hover { background:rgba(91,108,255,.1); color:var(--primary); text-decoration:none; }
html[data-theme="dark"] .m-douyin:hover { background:rgba(91,108,255,.18); }

/* 手机端：导航回 logo 下方整行，logo 行 = logo | 主题切换 + 视频解析 + 搜索（靠右聚拢） */
@media (max-width:767px) {
  .theme-toggle { order:1; margin-left:auto; }
  .m-douyin { order:1; margin-left:2px; padding:8px; }
  .search-trigger { order:2; margin-left:0; }
  .nav { order:3; }
  .m-douyin .md-txt { display:none; }
  .m-douyin svg { display:block; width:17px; height:17px; }
}

/* 搜索触发键桌面端按 DOM 顺序排（logo→主题→视频解析→🔍搜索→导航链接），手机端由 767px 块接管 */

/* ================= 2026-09-30 文字广告位补丁 ================= */
/* 广告区常驻 10 格文字网格（桌面 5 列 × 2 行）：在售广告标题彩色文字链（配色按序轮换），
   空位渲染「点击自助购买广告位」；虚线分隔，素净卡片底（覆盖原 .ad-zone 黄色渐变） */
.ad-text-zone { background:#fff; border:1px solid var(--border-light); padding:0; overflow:hidden; }
html[data-theme="dark"] .ad-text-zone { background:#1c233c; border-color:rgba(160,175,220,.14); }
.ad-text-grid { display:grid; grid-template-columns:repeat(5,1fr); }
.ad-text-cell { display:flex; align-items:center; justify-content:center; padding:13px 10px; font-size:14px; font-weight:700; text-decoration:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; border-right:1px dashed var(--border-light); border-bottom:1px dashed var(--border-light); transition:background .15s,filter .15s; }
.ad-text-cell:nth-child(5n) { border-right:none; }
.ad-text-cell:nth-child(n+6) { border-bottom:none; }
.ad-text-cell:hover { background:rgba(91,108,255,.05); text-decoration:none; }
.ad-text-buy { color:#94a3b8; font-weight:500; font-size:12.5px; }
.ad-text-buy:hover { color:var(--primary); background:rgba(91,108,255,.05); }
html[data-theme="dark"] .ad-text-buy { color:#8b95ad; }
@media (max-width:767px) {
  .ad-text-grid { grid-template-columns:repeat(2,1fr); }
  .ad-text-cell { padding:11px 8px; font-size:13px; }
  .ad-text-cell:nth-child(5n) { border-right:1px dashed var(--border-light); }
  .ad-text-cell:nth-child(n+6) { border-bottom:1px dashed var(--border-light); }
  .ad-text-cell:nth-child(2n) { border-right:none; }
  .ad-text-cell:nth-child(n+9) { border-bottom:none; }
}

/* ================= 2026-09-30 广告弹窗购买补丁 ================= */
/* 点击空位/购买链接就地弹出购买框（文字/顶部图片/侧栏图片），提交走 AJAX 不跳页 */
.adbuy-modal { position:fixed; inset:0; z-index:10000; display:flex; align-items:center; justify-content:center; padding:16px; }
.adbuy-modal[hidden] { display:none; }
.adbuy-mask { position:absolute; inset:0; background:rgba(15,23,42,.5); }
.adbuy-panel { position:relative; width:100%; max-width:420px; max-height:92vh; overflow:auto; background:#fff; border-radius:14px; box-shadow:0 24px 64px rgba(15,23,42,.3); padding:18px; animation:sModIn .18s ease; }
html[data-theme="dark"] .adbuy-panel { background:#1c233c; }
.adbuy-x { position:absolute; top:10px; right:10px; width:30px; height:30px; border:0; background:transparent; color:#94a3b8; font-size:22px; line-height:1; cursor:pointer; border-radius:8px; padding:0; }
.adbuy-x:hover { background:rgba(100,116,139,.12); color:var(--text); }
.adbuy-title { font-size:16px; font-weight:700; color:var(--text); margin:0 0 14px; padding-right:30px; }
.adbuy-table { width:100%; border-collapse:collapse; }
.adbuy-table th { text-align:left; font-size:13px; color:#94a3b8; font-weight:500; white-space:nowrap; padding:7px 10px 7px 0; vertical-align:middle; width:70px; }
.adbuy-table td { padding:7px 0; vertical-align:middle; font-size:14px; color:var(--text); }
.adbuy-table input[type=text] { padding:8px 12px; border:1px solid var(--border); border-radius:8px; font-size:14px; outline:none; }
.adbuy-table input[type=text]:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(91,108,255,.14); }
.adbuy-table input[type=file] { font-size:12px; max-width:200px; }
.adbuy-rule { margin-top:12px; padding:8px 12px; background:rgba(240,180,41,.12); border:1px solid rgba(240,180,41,.4); border-radius:8px; font-size:12px; color:#92400e; line-height:1.7; word-break:break-all; }
html[data-theme="dark"] .adbuy-rule { color:#fbbf24; }
.adbuy-msg { margin-top:10px; padding:8px 12px; border-radius:8px; font-size:13px; }
.adbuy-msg.ok { background:rgba(16,185,129,.1); border:1px solid rgba(16,185,129,.4); color:#059669; }
.adbuy-msg.err { background:rgba(239,68,68,.08); border:1px solid rgba(239,68,68,.4); color:#dc2626; }
.adbuy-login { padding:28px 0; text-align:center; font-size:14px; color:var(--text); }
.adbuy-login a { color:var(--primary); font-weight:600; }
/* 文字格的购买按钮形态（覆盖 a 链接默认样式） */
button.ad-text-buy { background:transparent; border:0; cursor:pointer; font-family:inherit; }
button.ad-text-buy:hover { background:rgba(91,108,255,.05); color:var(--primary); }
@media (max-width:767px) {
  .adbuy-panel { padding:14px; }
  .adbuy-table th { width:64px; }
}


/* ================= 2026-10-01 用户悬停资料卡（鼠标移到头像弹出） ================= */
.ucard-pop{position:fixed;z-index:9600;width:260px;background:var(--card-bg-solid,#fff);color:var(--text);border:1px solid var(--border-light,rgba(100,115,160,.18));border-radius:12px;box-shadow:0 12px 36px rgba(15,23,42,.18);padding:14px;box-sizing:border-box;animation:ucardIn .15s ease}
.ucard-pop[hidden]{display:none}
@keyframes ucardIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ucard-loading{font-size:13px;color:var(--text-secondary,#7c86a2);text-align:center;padding:6px 0}
.ucard-head{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.ucard-head:hover{text-decoration:none}
.ucard-ava{flex-shrink:0}
.ucard-ava img,.ucard-ava .ucard-ava-fall{width:48px;height:48px;border-radius:50%;object-fit:cover;display:block}
.ucard-ava .ucard-ava-fall{background:var(--primary,#5b6cff);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}
.ucard-hd-tx{min-width:0;display:flex;flex-direction:column;gap:4px}
.ucard-name{font-size:15px;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ucard-sub{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px}
.ucard-uid{font-style:normal;color:var(--text-secondary,#7c86a2)}
.ucard-badge{font-style:normal;font-size:11px;padding:2px 8px;border-radius:999px;background:rgba(91,108,255,.12);color:var(--primary,#5b6cff);font-weight:600}
.ucard-badge.is-admin{background:var(--primary,#5b6cff);color:#fff}
.ucard-days{color:var(--text-secondary,#7c86a2)}
.ucard-stats{display:flex;gap:16px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border-light,rgba(100,115,160,.15));font-size:13px;color:var(--text-secondary,#7c86a2)}
.ucard-stats b{color:var(--text);font-weight:700}
html[data-theme="dark"] .ucard-pop{background:#1c233c;border-color:rgba(255,255,255,.12);box-shadow:0 12px 36px rgba(0,0,0,.5)}
html[data-theme="dark"] .ucard-stats{border-top-color:rgba(255,255,255,.12)}
/* 背景装饰立绘（左右两张，后台「站点设置 → 背景装饰」）：fixed 装饰层，默认隐藏，由 footer.php 按最小显示宽度输出 @media 打开 */
.lf-bg-deco-layer{position:fixed;inset:0;z-index:-1;display:none;pointer-events:none;overflow:hidden}
.lf-bg-deco{position:absolute;bottom:var(--lf-bg-bottom,0px);height:var(--lf-bg-h,60vh);width:auto;max-width:none;opacity:var(--lf-bg-opacity,1);user-select:none;-webkit-user-drag:none;animation:lf-bg-fade .5s ease both}
.lf-bg-deco--left{left:0}
.lf-bg-deco--right{right:0}
@keyframes lf-bg-fade{from{opacity:0}to{opacity:var(--lf-bg-opacity,1)}}
@media print{.lf-bg-deco-layer{display:none!important}}
/* 手机端已登录导航：与未登录的 .nav-guest 一致，整体靠右显示 */
@media (max-width:640px){.nav:not(.nav-guest){justify-content:flex-end}}

/* ===== 右侧浮动件：主题切换（在上）+ 返回顶部（在下） =====
   定位 right 由 js/fabrail.js 按「当前页面内容容器右缘」动态计算并写到
   documentElement 的 --fab-right 上：各页容器宽度不同（首页 .container=1100、
   个人中心 .pf-wrap=1120），写死 CSS 公式必然对不上。这里只给默认兜底值。 */
.fab-round{
  position:fixed; z-index:90; right:var(--fab-right, 18px);
  width:42px; height:42px; padding:0; border:none; border-radius:50%;
  display:flex; align-items:center; justify-content:center; overflow:hidden;
  cursor:pointer; line-height:0; color:#fff; background:var(--primary);
  box-shadow:0 6px 18px rgba(91,108,255,.35);
  transition:transform .18s cubic-bezier(.4,0,.2,1), box-shadow .18s, background .2s;
}
.fab-round:hover{ transform:translateY(-2px); box-shadow:0 10px 24px rgba(91,108,255,.45); }
.fab-round:focus-visible{ outline:2px solid var(--primary); outline-offset:3px; }
/* 图标必须同时锁 width 与 height：纵向长条形 viewBox 只写 width 会被 height 撑破圆形按钮 */
.fab-round svg{ width:17px !important; height:17px !important; flex:0 0 auto; display:block; }

#backTop{ bottom:90px; right:var(--fab-right, 18px); }   /* bottom 由 fabrail.js 统一排 */
.fab-theme{ bottom:142px; background:var(--text-secondary); }  /* 同上 */
.fab-theme:hover{ background:var(--primary); }
.fab-theme .ico-moon{ display:none; }
html[data-theme="dark"] .fab-theme .ico-sun{ display:none; }
html[data-theme="dark"] .fab-theme .ico-moon{ display:block; }
html[data-theme="dark"] .fab-round{ background:var(--text-secondary); }
html[data-theme="dark"] .fab-round:hover{ background:var(--primary); }
html[data-theme="dark"] #backTop{ background:var(--primary); }

/* 客服球：所有断点都跟随 --fab-right，避免与主题/返回顶部按钮叠在同一个 right 上。
   窄屏时 JS 会移除该变量，退回 12px 贴视口右缘。 */
.qqc-btn{ right:var(--fab-right, 12px); }
.qqc-win{ right:var(--fab-right, 12px); }
@media (max-width:640px){
  .fab-round{ width:38px; height:38px; }
  .fab-round svg{ width:15px !important; height:15px !important; }
  #backTop{ bottom:80px; }
  .fab-theme{ bottom:126px; }
}

/* ===== 自定义导航栏项（logo 右侧）=====
   沿用原 .m-douyin 的胶囊风格，保证与站点视觉一致。 */
.m-nav{
  display:inline-flex; align-items:center; gap:6px;
  padding:8px 10px; font-size:14px; color:var(--text);
  text-decoration:none; border-radius:999px;
  transition:.15s; flex-shrink:0; white-space:nowrap;
}
.m-nav:hover{ background:var(--primary-bg); color:var(--primary); }
@media (max-width:640px){
  .m-nav{ padding:5px 9px; font-size:12.5px; }
}

/* ===== 移动端页头顺序修正 =====
   .header-inner 在窄屏是 flex-wrap:wrap + .nav{flex:1 1 100%;order:3}，
   自定义导航项(.m-nav)没有 order，默认 order:0，
   换行后会被排到 logo 左侧（实测 nav.x=10 而 logo.x=133）。
   给 .m-nav 显式 order:1，让它跟 logo 同排且排在 logo 之后；
   order:2 留给 .nav（发帖/签到/头像那条整行）。 */
@media (max-width:900px){
  .header-inner .m-nav{ order:1; }
  .header-inner .logo{ order:0; }
  .header-inner .nav{ order:2; }
  .header-inner .m-douyin{ order:1; }
}
/* 窄屏时 logo 与导航项之间留一点间距，避免贴死 */
@media (max-width:640px){
  .header-inner .m-nav{ margin-left:2px; }
  /* logo 固定不压缩；导航项放不下时先收缩间距，仍不够则整体横向滚动 */
  .header-inner .logo{ flex-shrink:0; }
  .header-inner .m-nav{ flex-shrink:1; min-width:0; overflow:hidden; text-overflow:ellipsis; }
}

/* ===== 导航栏二级分类（下拉子菜单）=====
   结构：.m-nav.has-sub > button.m-nav-top + .m-nav-drop
   交互：JS 控制 [data-open]，CSS 只负责显隐与动效，便于键盘无障碍。 */
.m-nav.has-sub{ position:relative; display:inline-flex; }
.m-nav-top{
  display:inline-flex; align-items:center; gap:4px;
  padding:8px 10px; font:inherit; font-size:14px; color:var(--text);
  background:transparent; border:0; border-radius:999px;
  cursor:pointer; white-space:nowrap; transition:.15s;
}
.m-nav-top:hover, .m-nav.has-sub[data-open="1"] .m-nav-top{
  background:var(--primary-bg); color:var(--primary);
}
.m-nav-caret{ width:14px; height:14px; transition:transform .18s; }
.m-nav.has-sub[data-open="1"] .m-nav-caret{ transform:rotate(180deg); }

.m-nav-drop{
  position:absolute; top:calc(100% + 6px); left:0; z-index:120;
  min-width:132px; padding:5px;
  background:var(--card-bg-solid, #fff);
  border:1px solid var(--border-light); border-radius:var(--radius);
  box-shadow:0 10px 28px rgba(30,35,80,.14);
  display:flex; flex-direction:column; gap:1px;
}
.m-nav-drop[hidden]{ display:none; }
.m-nav-item{
  display:block; padding:7px 11px; border-radius:var(--radius-sm);
  font-size:14px; color:var(--text); text-decoration:none;
  white-space:nowrap; transition:background .15s,color .15s;
}
.m-nav-item:hover{ background:var(--primary-bg); color:var(--primary); }
/* 小三角指示 */
.m-nav-drop::before{
  content:''; position:absolute; top:-5px; left:16px;
  width:9px; height:9px; transform:rotate(45deg);
  background:var(--card-bg-solid, #fff);
  border-left:1px solid var(--border-light); border-top:1px solid var(--border-light);
}
@media (max-width:640px){
  .m-nav-top{ padding:5px 9px; font-size:12.5px; }
  .m-nav-drop{ min-width:112px; }
  .m-nav-item{ font-size:12.5px; padding:6px 9px; }
}

/* ===== 导航项「当前页」高亮 =====
   与 hover 视觉区分开：hover 只是浅底，当前页是「实心主色胶囊 + 白字 + 加粗 + 小圆点」，
   一眼能看出自己在哪个界面。深色模式另给一套。 */
.m-nav.is-cur,
.m-nav.has-sub.is-cur > .m-nav-top{
  background:var(--primary); color:#fff; font-weight:600;
  box-shadow:0 4px 12px rgba(91,108,255,.28);
}
.m-nav.is-cur:hover,
.m-nav.has-sub.is-cur > .m-nav-top:hover{
  background:var(--primary-dark); color:#fff;
}
.m-nav.has-sub.is-cur .m-nav-caret{ color:#fff; }
/* 当前页的父项：下拉开着时也保持高亮 */
.m-nav.has-sub.is-cur[data-open="1"] > .m-nav-top{ background:var(--primary-dark); }
.m-nav-drop .m-nav-item.is-cur{
  background:var(--primary-bg); color:var(--primary); font-weight:600;
}
html[data-theme="dark"] .m-nav.is-cur,
html[data-theme="dark"] .m-nav.has-sub.is-cur > .m-nav-top{
  background:var(--primary); color:#fff;
}
html[data-theme="dark"] .m-nav-drop .m-nav-item.is-cur{
  background:rgba(124,140,255,.22); color:var(--primary);
}

/* ===== 勋章中心 =====
   图片统一 100x100 容器 + object-fit:contain：后台传的图尺寸各异，
   不约束的话会撑破网格，所以固定尺寸 + 居中缩放。 */
.medals-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.medals-top h1{ margin:0 0 4px; font-size:20px; font-weight:800; }
.medals-top .hint{ margin:0; }
.medal-grid{
  display:grid; grid-template-columns:repeat(auto-fill, minmax(122px, 1fr));
  gap:14px; margin-top:12px;
}
.medal-item{
  display:flex; flex-direction:column; align-items:center; gap:7px;
  padding:12px 8px; border:1px solid var(--border-light);
  border-radius:var(--radius); background:var(--bg-deep);
  text-align:center;
}
.medal-item.is-worn{ border-color:var(--primary); background:var(--primary-bg); }
.medal-item.is-locked{ opacity:.92; }
.medal-box{
  position:relative; width:100px; height:100px;   /* ★ 固定尺寸 */
  display:flex; align-items:center; justify-content:center;
  border-radius:var(--radius-sm); overflow:hidden;
  background:var(--card-bg-solid, #fff);
}
.medal-box img{
  width:100px; height:100px;      /* ★ 固定 */
  object-fit:contain;             /* ★ 不同尺寸的图等比缩放，不裁切不撑破 */
  display:block;
}
.medal-box img.is-gray{ filter:grayscale(1) opacity(.5); }
.medal-none{ font-size:12px; color:var(--muted-light); }
.medal-lock{ position:absolute; right:4px; bottom:4px; color:var(--muted-light); }
.medal-lock svg{ width:16px; height:16px; display:block; }
.medal-flag{
  position:absolute; top:4px; left:4px;
  padding:1px 6px; border-radius:var(--radius-full);
  background:var(--primary); color:#fff; font-size:11px; font-weight:700;
}
.medal-name{ font-size:13px; font-weight:600; line-height:1.3; word-break:break-all; }
.medal-cond{ font-size:12px; color:var(--muted-light); }
.medal-prog{
  position:relative; width:100%; height:16px; border-radius:var(--radius-full);
  background:var(--border-light); overflow:hidden;
}
.medal-prog span{ position:absolute; inset:0 auto 0 0; background:var(--primary); opacity:.55; }
.medal-prog em{
  position:relative; display:block; font-style:normal;
  font-size:11px; line-height:16px; color:var(--text-secondary);
}
@media (max-width:640px){
  .medal-grid{ grid-template-columns:repeat(auto-fill, minmax(104px, 1fr)); gap:10px; }
  .medal-box, .medal-box img{ width:84px; height:84px; }
}
html[data-theme="dark"] .medal-box{ background:#1c233c; }

/* ===== 帖子页侧栏作者卡（对齐参考图：居中纵向 + 背景大图 + 圆形头像叠压） =====
   结构：.wa-cover(背景大图) → .wa-body(居中：头像/名字/勋章/UID/按钮) → .wa-stats(4 列一行)
   所有元素 text-align:center，圆形头像用负边距叠压在封面下沿。 */
.widget-author-dz{ padding:0; overflow:hidden; }

/* 封面：默认紫渐变；有背景图时铺满并压一层暗色遮罩保证白色文字可读 */
.widget-author-dz .wa-cover{
  height:120px;
  background:linear-gradient(135deg,#c9d0ff 0%,#dcd0ff 50%,#ecd6f5 100%);  /* ★ 减淡：淡紫蓝→淡粉 */
  background-size:cover; background-position:center 24%; background-repeat:no-repeat;
  position:relative;
}
/* 有背景图时：inline style 直接写在 .wa-cover 上（background-image 会覆盖上面的渐变），
   所以这里只需要补上遮罩层，保证下面压着的白色文字可读。 */
.widget-author-dz.has-bg .wa-cover{ background-color:#d5d0f5; }
.widget-author-dz.has-bg .wa-cover::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.42) 100%);
}

/* 居中主体：圆形头像用负边距叠压在封面下沿（dz 效果的关键） */
.widget-author-dz .wa-body{
  position:relative; z-index:2;
  text-align:center; padding:0 14px 14px;
  margin-top:-46px;                 /* ★ 叠压量 = 头像半径左右 */
}
.widget-author-dz .wa-avatar{
  display:inline-block; line-height:0; text-decoration:none;
  width:96px; height:96px; padding:5px; border-radius:50%;
  background:#fff; box-shadow:0 6px 20px rgba(20,14,48,.30);
  margin-bottom:8px;
}
.widget-author-dz .wa-avatar .avatar{
  width:86px !important; height:86px !important;
  line-height:86px !important; border-radius:50% !important;
}
/* 名字（居中） */
.widget-author-dz .wa-name{
  display:flex; align-items:center; justify-content:center; gap:6px; flex-wrap:wrap;
  font-family:var(--serif); font-size:16px; font-weight:800; color:#2a2450;
  margin-bottom:6px;
}
.widget-author-dz .wa-name > a{ color:#2a2450; text-decoration:none; }
.widget-author-dz .wa-name > a:hover{ color:var(--primary); }

/* 勋章行：居中，固定 30px 方图（对齐参考图） */
.widget-author-dz .wa-worn{
  display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin:2px 0 6px;
}
.widget-author-dz .wa-worn img{
  width:30px; height:30px;            /* ★ 固定尺寸 */
  object-fit:contain;                 /* ★ 不同尺寸等比缩放 */
  display:block;
}

/* UID + 身份徽章（居中胶囊） */
.widget-author-dz .wa-uidrow{
  display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin-bottom:10px;
}
.wa-chip{
  display:inline-flex; align-items:center; padding:2px 11px;
  border-radius:var(--radius-full);
  background:rgba(255,255,255,.72); color:#4b3f86;
  font-size:11.5px; font-weight:700; line-height:1.6;
  box-shadow:0 1px 3px rgba(60,40,120,.10);
}
.wa-chip-role{ background:rgba(255,255,255,.58); color:#5b508f; }

/* 私信 / 关注（居中并排，实心蓝底，对齐参考图） */
.widget-author-dz .wa-actions{
  display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin-bottom:2px;
}
.widget-author-dz .wa-actions form{ margin:0; }
.widget-author-dz .wa-btn{
  display:inline-flex; align-items:center; gap:4px;
  padding:6px 15px; border-radius:var(--radius-full);
  background:rgba(255,255,255,.86); color:#4b3f86;
  font-size:12.5px; font-weight:700; text-decoration:none;
  border:1px solid rgba(75,63,134,.14); cursor:pointer; line-height:1.3;
  box-shadow:0 2px 8px rgba(60,40,120,.10);
  transition:transform .15s, box-shadow .15s;
}
.widget-author-dz .wa-btn:hover{ transform:translateY(-1px); box-shadow:0 6px 14px rgba(91,108,255,.34); }
.widget-author-dz .wa-btn svg{ width:13px; height:13px; }
.widget-author-dz .wa-btn-follow.is-on{
  background:rgba(91,108,255,.14); color:#4b3f86; border-color:rgba(91,108,255,.24);
}

/* 四项统计：一行四列，等宽 */
.widget-author-dz .wa-stats{
  display:flex; border-top:1px solid rgba(74,60,150,.12);
  padding:12px 0; background:rgba(255,255,255,.42);
}
.widget-author-dz .wa-stats .stat-item{
  flex:1; text-align:center; min-width:0;
  border-right:1px solid var(--border-light);
}
.widget-author-dz .wa-stats .stat-item:last-child{ border-right:none; }
.widget-author-dz .wa-stats .stat-num{
  font-family:var(--serif); font-size:19px; font-weight:800; color:#4b3f86; line-height:1.2;
}
.widget-author-dz .wa-stats .stat-label{ font-size:11.5px; color:#6f6598; margin-top:2px; }

@media (max-width:640px){
  .widget-author-dz .wa-cover{ height:104px; }
  .widget-author-dz .wa-body{ margin-top:-40px; }
  .widget-author-dz .wa-avatar{ width:84px; height:84px; }
  .widget-author-dz .wa-avatar .avatar{ width:74px !important; height:74px !important; line-height:74px !important; }
  .widget-author-dz .wa-stats .stat-num{ font-size:17px; }
}
html[data-theme="dark"] .widget-author-dz .wa-cover{
  background:linear-gradient(135deg,#4a4f86 0%,#584a7e 50%,#6b4a72 100%);
}
html[data-theme="dark"] .widget-author-dz .wa-name,
html[data-theme="dark"] .widget-author-dz .wa-name > a{ color:#eef0ff; }
html[data-theme="dark"] .widget-author-dz .wa-stats{ background:rgba(255,255,255,.06); }
html[data-theme="dark"] .widget-author-dz .wa-stats .stat-num{ color:#b8bcff; }
html[data-theme="dark"] .widget-author-dz .wa-stats .stat-label{ color:#9aa0cc; }

/* 面板内的小表格（签到排行榜等）不参与页头吸附：
   .admin-table thead th 是 sticky(top:var(--header-height))，
   在个人中心里滚动时表头会浮在页头下方、盖住第一行数据（实测遮挡第 1 名头像）。 */
.checkin-rank-table thead th{ position:static; top:auto; z-index:auto; box-shadow:none; }



/* 回复行「发布时间」：与楼层号共用 .time 骨架，但改回常规字重/字号，
   避免和 #楼层 一样用衬线加粗抢视线；今天的回复由内联样式点主色加粗。 */
.reply-head .reply-time{ font-family:inherit; font-weight:400; color:var(--muted); font-size:12px; letter-spacing:0; white-space:nowrap; }

/* ============================================================
   首页列表行 · Discuz 风美化
   头像方块描边 + 标题/元信息两行 + 右侧分类胶囊(上)与浏览/回复统计(下)
   ============================================================ */
/* 头像：圆角方块 + 主色描边环 */
.post-item .post-avatar-col .avatar{
  border-radius:13px;
  border:2px solid var(--card-bg-solid, #fff);
  box-shadow:0 0 0 2px rgba(91,108,255,.55), 0 3px 10px rgba(60,40,120,.16);
}
html[data-theme="dark"] .post-item .post-avatar-col .avatar{
  box-shadow:0 0 0 2px rgba(124,140,255,.60), 0 3px 10px rgba(0,0,0,.35);
}
.post-item .post-avatar-col a:hover{ transform:none; }

/* 主体：左信息区竖向居中，右信息区撑满并上下分开 */
.post-item .post-main{ align-items:stretch; }
.post-item .post-main-left{ display:flex; flex-direction:column; justify-content:center; gap:8px; }

/* 元信息行：作者 · 于X发布 · 最后回复者 于Y回复 */
.post-item .post-meta{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; row-gap:4px; margin-bottom:0; }
.post-item .post-pub{ color:var(--muted); font-size:12px; }
.post-item .post-pub .meta-time{ color:var(--text-secondary); font-weight:600; }
.post-item .post-meta .post-last-inline{
  display:inline-flex; align-items:center; gap:5px;
  margin-left:0; padding-left:10px;
  border-left:1px solid var(--border-light);
  color:var(--muted); font-size:12px; white-space:nowrap;
}
.post-item .post-last-inline::before{
  content:''; width:14px; height:14px; flex-shrink:0; opacity:.85;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238d877b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.38 8.38 0 0 1-8.5 8.5 8.5 8.5 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 8.5-8.5 8.38 8.38 0 0 1 8.5 8.5z'/%3E%3C/svg%3E") no-repeat center/contain;
}
.post-item .post-last-inline .pl-name{ color:var(--primary); font-weight:600; text-decoration:none; }
.post-item .post-last-inline .pl-name:hover{ text-decoration:underline; }
.post-item .post-last-inline .pl-time{ color:var(--muted); }

/* 分类标签（角标造型）：贴卡片右上角；渐变底 + 左侧白圆小图标 + 白字。
   卡片 overflow:hidden → 标签外角跟随卡片圆角，形成参考图那种“角标”观感。
   有分类时标题行右侧留出让位（桌面）；窄屏见下方 @media，标签独占一行。 */
.post-item{ position:relative; overflow:hidden; }
.post-item .cat-pill{
  position:absolute; top:0; right:0; z-index:3;
  display:inline-flex; align-items:center; gap:4px;
  padding:4px 10px 4px 8px;
  border-radius:0 0 0 11px;
  font-size:11px; font-weight:700; line-height:1.1; color:#fff; text-decoration:none; white-space:nowrap;
  background:linear-gradient(125deg,#f28af0 0%,#f96fa6 55%,#ff5a78 100%);
  box-shadow:0 3px 10px rgba(240,80,130,.28);
  transition:filter .15s;
}
.post-item .cat-pill .cat-pill-ico{
  width:14px; height:14px; border-radius:50%; flex-shrink:0; background:#fff;
  position:relative; box-shadow:0 1px 2px rgba(150,30,80,.22);
}
.post-item .cat-pill .cat-pill-ico::before{
  content:''; position:absolute; inset:3px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23f2a20c'%3E%3Cpath d='M12 3.2c-4.9 0-8.9 3.1-8.9 7 0 2.3 1.3 4.3 3.3 5.6-.2 1.3-.8 2.4-1.7 3.3-.3.3-.1.9.4.8 1.9-.3 3.5-1 4.8-1.9 1.1.2 2.3.4 3.5.4 4.9 0 8.9-3.1 8.9-7s-4-7-8.9-7z'/%3E%3C/svg%3E") no-repeat center/contain;
}
.post-item .cat-pill:hover{ filter:brightness(1.06); }
/* 让位宽度跟着标签实际宽度走。负缝 = 徽章右端探到标签下面约 10px（标签在上层，压住一点更好看） */
.post-item.has-cat .post-title-row{ padding-right:calc(var(--catw, 58px) - 30px); }
.post-item .post-stats{ display:inline-flex; align-items:center; gap:12px; margin-left:auto; }
.post-item .post-stats .post-views,
.post-item .post-stats .reply-count-mini{
  display:inline-flex; align-items:center; gap:4px;
  color:var(--text-secondary); font-size:12px; white-space:nowrap;
}

/* 窄屏：标签与标题同一行（不占整条带 → 行更矮）；元信息锁成一行；长标题最多折两行 */
@media (max-width:640px){
  .post-item{ padding:11px 13px; gap:10px; }
  .post-item .post-avatar-col .avatar{ width:42px !important; height:42px !important; line-height:42px !important; border-radius:11px; }
  .post-item.has-cat .post-title-row{ padding-right:calc(var(--catw, 58px) - 23px); }   /* 窄屏内边距 13 → 徽章右端探到标签下约 10px */
  .post-item .post-title{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; white-space:normal; overflow:hidden; flex:1 1 auto; min-width:0; }
  .post-item .post-meta{ flex-wrap:nowrap; row-gap:0; gap:7px; }
  .post-item .post-meta .post-pub{ flex-shrink:0; }
  .post-item .post-meta .post-last-inline{ display:none; }   /* 窄屏放不下 → 不显示，避免被截成半句（桌面照旧） */
  .post-item .post-stats{ order:0; margin-left:auto; flex-shrink:0; }
}

/* 分类配色（不同板块不同色，手机与电脑一致）：按 category_id % 6 取色，与参考图同风格 */
.post-item .cat-pill.cat-c0{ background:linear-gradient(125deg,#f28af0 0%,#f96fa6 55%,#ff5a78 100%); box-shadow:0 3px 10px rgba(240,80,130,.28); }
.post-item .cat-pill.cat-c1{ background:linear-gradient(125deg,#7ee79a 0%,#3fc97a 55%,#12a45f 100%); box-shadow:0 3px 10px rgba(30,170,100,.26); }
.post-item .cat-pill.cat-c2{ background:linear-gradient(125deg,#6fe6d8 0%,#31c4bd 55%,#0f9fa6 100%); box-shadow:0 3px 10px rgba(20,160,165,.26); }
.post-item .cat-pill.cat-c3{ background:linear-gradient(125deg,#8bb6ff 0%,#5a83f8 55%,#3d5fe0 100%); box-shadow:0 3px 10px rgba(60,110,230,.26); }
.post-item .cat-pill.cat-c4{ background:linear-gradient(125deg,#ffc078 0%,#fb9636 55%,#f2720e 100%); box-shadow:0 3px 10px rgba(240,140,30,.26); }
.post-item .cat-pill.cat-c5{ background:linear-gradient(125deg,#c39bff 0%,#9a6bf5 55%,#7a45e6 100%); box-shadow:0 3px 10px rgba(130,80,230,.26); }

/* ================= 2026-10-06 手机端导航改版：左侧三横 + 左侧抽屉 =================
   窄屏（≤640px）顶栏只保留「三横按钮 + 站名」；
   原先夹在顶栏里的自定义导航项(.m-nav) 和整条账号导航行(.nav)全部移进抽屉，
   桌面（≥641px）完全不变 —— 三横与抽屉在桌面 CSS 里整组 display:none。 */

.nav-hamburger { display: none; }

@media (max-width: 640px) {
  .site-header { padding: 5px 0; }
  .header-inner { flex-wrap: nowrap; gap: 8px; padding: 0 12px; }

  /* 左侧三横按钮 */
  .nav-hamburger {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; margin-left: -7px; padding: 0;
    border: 0; background: transparent; color: var(--text);
    border-radius: 11px; cursor: pointer; flex: 0 0 auto;
    -webkit-tap-highlight-color: transparent;
    transition: background .15s, color .15s;
  }
  .nav-hamburger:active { background: var(--primary-bg); color: var(--primary); }
  .nav-hamburger:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
  .nav-hamburger svg { width: 22px; height: 22px; display: block; }

  /* 顶栏里这两组导航全部收进抽屉 */
  .header-inner > .nav,
  .header-inner > .m-nav { display: none !important; }

  /* 站名吃掉剩余宽度（原 max-width:42% 限制是为给 .m-nav 留位，现已不需要） */
  .header-inner > .logo { order: 1; flex: 1 1 auto; max-width: none; font-size: 18px; }
}

/* ---- 抽屉本体 ----
   渲在 header 之外：.site-header 有 backdrop-filter，它是 fixed 子元素的包含块，
   抽屉若放在 header 里会被限制在那一条高度里跑不出来。 */
.drawer-mask {
  position: fixed; inset: 0; z-index: 9000;
  background: rgba(15, 23, 42, .45);
  opacity: 0; visibility: hidden;
  transition: opacity .26s ease, visibility .26s ease;
}
.drawer {
  position: fixed; top: 0; left: 0; bottom: 0; z-index: 9100;
  width: 82vw; max-width: 320px;
  display: flex; flex-direction: column;
  background: var(--card-bg-solid, #fff);
  box-shadow: 6px 0 30px rgba(20, 30, 70, .2);
  transform: translateX(-102%);
  transition: transform .28s cubic-bezier(.4, 0, .2, 1);
  overscroll-behavior: contain;
}
body.drawer-open .drawer-mask { opacity: 1; visibility: visible; }
body.drawer-open .drawer { transform: translateX(0); }
@media (min-width: 641px) { .drawer, .drawer-mask { display: none; } }

/* 顶部账号区：主色渐变，未登录给登录/注册两个按钮 */
.drawer-head {
  position: relative; flex-shrink: 0;
  padding: calc(14px + env(safe-area-inset-top)) 16px 14px;
  color: #fff; background: var(--primary-gradient);
}
.drawer-close {
  position: absolute; top: calc(10px + env(safe-area-inset-top)); right: 10px;
  width: 30px; height: 30px; padding: 0; border: 0; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  background: rgba(255, 255, 255, .18); color: #fff; border-radius: 9px;
}
.drawer-close svg { width: 15px; height: 15px; }
.drawer-me { display: flex; align-items: center; gap: 11px; text-decoration: none; color: inherit; }
.drawer-me .avatar { width: 46px !important; height: 46px !important; line-height: 46px !important; border-radius: 50%; box-shadow: 0 0 0 2px rgba(255, 255, 255, .55); }
.dm-tx { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.dm-name { font-size: 15.5px; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dm-sub { font-size: 12px; opacity: .92; }
/* 用户名里的 VIP / 管理员 / 版主徽章：在渐变底上改成半透明白，避免沿用正文配色糊成一片 */
.dm-name .author { color: inherit; text-decoration: none; }
.drawer-me .vip-name { color: inherit; }
.drawer-me .vip-badge, .drawer-me .auth-badge {
  background: rgba(255, 255, 255, .24); color: #fff;
  border: 1px solid rgba(255, 255, 255, .42);
}
.drawer-guest { display: flex; align-items: center; gap: 8px; margin-top: 11px; }
.dg-btn {
  flex: 1 1 0; text-align: center; padding: 8px 0; border-radius: 10px;
  font-size: 13.5px; font-weight: 600; text-decoration: none; font-family: inherit;
}
.dg-btn.in { background: #fff; color: var(--primary); }
.dg-btn.up { background: rgba(255, 255, 255, .2); color: #fff; border: 1px solid rgba(255, 255, 255, .5); }

/* 菜单列表 */
.drawer-body { flex: 1 1 auto; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 8px 10px 14px; }
.drawer-grp { font-size: 11.5px; color: var(--text-secondary); padding: 11px 8px 5px; letter-spacing: .4px; }
.drawer-link {
  display: flex; align-items: center; gap: 11px; width: 100%;
  padding: 11px 10px; border: 0; border-radius: 11px;
  background: transparent; color: var(--text); font-family: inherit;
  font-size: 14.5px; font-weight: 500; text-align: left; text-decoration: none; cursor: pointer;
  transition: background .15s, color .15s;
}
.drawer-link svg { width: 19px; height: 19px; flex: 0 0 auto; color: var(--text-secondary); }
.drawer-link .dl-num {
  margin-left: auto; min-width: 18px; height: 18px; padding: 0 5px;
  border-radius: 999px; background: var(--danger); color: #fff;
  font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center;
}
.drawer-link:active { background: var(--primary-bg); color: var(--primary); }
.drawer-link:active svg { color: var(--primary); }
.drawer-link.is-cur { background: var(--primary-bg); color: var(--primary); font-weight: 700; }
.drawer-link.is-cur svg { color: var(--primary); }
.drawer-sub { display: flex; flex-direction: column; gap: 1px; margin: 3px 0 5px 30px; }
.drawer-sub a { padding: 8px 10px; border-radius: 9px; font-size: 13.5px; color: var(--text-secondary); text-decoration: none; }
.drawer-sub a:active { background: var(--primary-bg); color: var(--primary); }

/* 底部：退出 */
.drawer-foot { flex-shrink: 0; padding: 9px 10px calc(10px + env(safe-area-inset-bottom)); border-top: 1px solid var(--border-light); }
.drawer-logout { display: flex; align-items: center; gap: 11px; padding: 11px 10px; border-radius: 11px; color: var(--danger); font-size: 14.5px; font-weight: 600; text-decoration: none; }
.drawer-logout svg { width: 19px; height: 19px; }

html[data-theme="dark"] .drawer { background: #1c233c; }
html[data-theme="dark"] .drawer-foot { border-top-color: rgba(255, 255, 255, .12); }
html[data-theme="dark"] .drawer-close { background: rgba(255, 255, 255, .16); }

/* ================= 2026-10-06 手机端顶栏补完：站名居中 + 右侧账号/登录按钮 ================= */

/* 右侧账号按钮整组在桌面隐藏，仅 ≤640px 出现 */
.nav-user-btn { display: none; }

@media (max-width: 640px) {
  /* 站名居中：flex:1 吃掉中间剩余宽度，内容居中后正好落在视口中线 */
  .header-inner > .logo { justify-content: center; text-align: center; }

  /* 右侧圆形按钮：未登录=人像图标 / 已登录=头像 */
  .nav-user-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; margin-right: -7px; padding: 0;
    border: 0; background: transparent; color: var(--text);
    border-radius: 50%; cursor: pointer; flex: 0 0 auto;
    -webkit-tap-highlight-color: transparent; text-decoration: none;
  }
  .nav-user-btn svg { width: 24px; height: 24px; display: block; }
  .nav-user-btn:active { background: var(--primary-bg); color: var(--primary); }
  .nav-user-btn:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
  .nav-user-btn .avatar { width: 30px !important; height: 30px !important; line-height: 30px !important; font-size: 13px !important; border-radius: 50%; }

  /* 顶栏三栏：左三横(order:0) / 中站名(order:1, flex 吃掉中间) / 右账号(order:2)，
     两侧各锁 38px 宽，站名在中间区域居中即落在视口中线 */
  .header-inner > .nav-hamburger { order: 0; flex: 0 0 38px; }
  .header-inner > .nav-user-btn { order: 2; flex: 0 0 38px; }
}
