:root{--yy-red:#E60012;--yy-red-d:#c10010;--yy-red-light:#ff1f3d;--yy-red-error:#c62828;--yy-red-tint:#fbe9ea;--t1:#222;--t2:#666;--t3:#999;--t4:#888;--t5:#333;--t6:#9aa0a6;--bg:#f4f5f7;--bg-layer:#fafbfc;--bg-panel:#fafafa;--card:#fff;--white:#fff;--line:#ececec;--line-dark:#d9dde3;--blue:#2b6cee;--blue-link:#1a73e8;--green:#1aa35a;--green-dark:#2e7d32;--orange:#f0883b;--gold:#f5a623;--red-tint-light:#fff5f5;--bg-hover:#f0f2f5;--green-accent:#e8f5e9;--red-accent:#fdecec;--blue-tint:#e8f0fe;--text-sub:#555;--text-hint:#777;--gold-light:#fdf2e0;--green-dark2:#2e7d4f;--red-dark:#b71c1c;--red-glow:#ff4d6a;--bg-input:#f5f5f7;--bg-warm:#fffafa;--text-dark:#111;--blue-deep:#2563eb;--blue-pale:#dbeafe;--green-mint:#d1fae5;--green-emerald:#059669;--red-pale:#fee2e2;--red-rose:#dc2626;--amber:#e8940f;--amber-bg:#fef3cd;--amber-text:#b7791f;--purple:#7c3aed;--purple-pale:#ede4ff;--gray-pale:#e5e7eb;--gray-base:#4b5563;--radius:12px;--shadow:0 2px 12px rgba(0,0,0,.06);--radius-overlay:20px;--ease-smooth:cubic-bezier(.25,1,.5,1);--ease-snappy:cubic-bezier(.22,1,.36,1);--ease-decisive:cubic-bezier(.16,1,.3,1);--yy-red-glow-soft:rgba(230,0,18,.08);--yy-red-glow:rgba(230,0,18,.15);--yy-red-glow-strong:rgba(230,0,18,.28);--yy-red-border:rgba(230,0,18,.42);--glass-bg:rgba(255,255,255,.72);--glass-border:rgba(255,255,255,.45);--card-hover-shadow:0 8px 32px rgba(0,0,0,.08),0 2px 8px rgba(0,0,0,.04)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;background:var(--bg);color:var(--t1);font-size:14px}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:14px}button.menu-item{background:transparent;border:none;width:calc(100% - 16px);text-align:left;font-size:inherit;color:inherit}button.bn-item{background:transparent;border:none;text-align:center;cursor:pointer}#login{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(#0f11178c,#0f11178c),url(/assets/login-bg.webp) center/cover}.login-card{background:linear-gradient(170deg,var(--white) 0%,var(--card) 100%);border-radius:20px;padding:40px 40px 28px;width:420px;max-width:92vw;box-shadow:0 30px 70px #14000552,0 0 0 1px #ffffffb3 inset;position:relative;overflow:hidden;animation:loginCardIn .6s cubic-bezier(.16,1,.3,1) both}.login-card:before{content:"";position:absolute;top:14px;left:50%;transform:translate(-50%);width:180px;height:30px;background:url("data:image/svg+xml;utf8,%3C?xml version=%221.0%22 encoding=%22UTF-8%22?%3E%3Csvg width=%22712px%22 height=%22115.665843px%22 viewBox=%220 0 712 115.665843%22 version=%221.1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22%3E    %3Ctitle%3E\7f16\7ec4  22%3C/title%3E    %3Cg id=%22\9875\9762-1%22 stroke=%22none%22 stroke-width=%221%22 fill=%22none%22 fill-rule=%22evenodd%22%3E        %3Cg id=%22\7f16\7ec4-22%22 transform=%22translate(0, 0.0003)%22 fill-rule=%22nonzero%22%3E            %3Cpath d=%22M143.699117,37 C158.909724,37 170.779273,40.7883948 179.175879,48.144929 C187.213477,55.1584879 191.643449,65.4460033 191.221273,76.1173793 C190.957007,86.6603942 186.511497,96.6634119 178.86815,103.913625 C168.96975,111.976512 156.438302,116.073249 143.699117,115.410963 C129.587543,115.410963 116.662924,111.71067 108.266317,104.133881 C100.382951,97.0084096 95.9188644,86.8434887 96.0011169,76.2054815 C96.3113389,65.6366396 100.82184,55.6298302 108.530085,48.4092356 C117.102537,40.876497 128.44455,37 143.699117,37 Z M155.216976,54.0477768 C144.973995,49.5545643 135.917969,55.016901 128.44455,68.9370495 C120.61944,83.6501178 121.542627,94.1342803 132.137298,98.4072373 C142.731969,102.680194 151.787995,97.0416531 158.909724,83.5620156 C166.822756,68.8929984 165.459956,58.5409893 155.216976,54.0477768 Z%22 id=%22\5f62\72b6\7ed3\5408%22 fill=%22%23E60012%22%3E%3C/path%3E            %3Cpath d=%22M199.661841,52.4619371 L199.661841,114.618043 L199.661841,114.838299 L199.661841,114.618043 L226.038615,114.618043 L226.434744,114.618043 C228.643883,114.618043 230.434744,112.827182 230.434744,110.618043 L230.434744,110.212933 L230.434744,110.212933 L230.434744,56.8670473 C248.019261,52.1535794 259.712964,57.131354 259.712964,64.6200414 L259.712964,110.609393 C259.563118,111.719837 259.942558,112.836317 260.7376,113.624324 C261.532642,114.412331 262.650926,114.780322 263.757403,114.618043 L290.134177,114.618043 L290.134177,66.16183 C289.914371,41.3610592 258.657893,29.7756191 204.893234,44.8851474 C201.650784,45.9489994 199.512172,49.0464178 199.661841,52.4619371 Z%22 id=%22\8def\5f84%22 fill=%22%23E60012%22%3E%3C/path%3E            %3Cpath d=%22M509.699117,37 C494.44455,37 483.102537,40.876497 474.530085,48.4092356 C466.82184,55.6298302 462.311339,65.6366396 462.001117,76.2054815 C461.918864,86.8434887 466.382951,97.0084096 474.266317,104.133881 C482.662924,111.71067 495.587543,115.410963 509.699117,115.410963 C522.438302,116.073249 534.96975,111.976512 544.86815,103.913625 C552.511497,96.6634119 556.957007,86.6603942 557.221273,76.1173793 C557.643449,65.4460033 553.213477,55.1584879 545.175879,48.144929 C536.779273,40.7883948 524.909724,37 509.699117,37 Z M498.137298,98.4072373 C487.542627,94.1342803 486.61944,83.6501178 494.44455,68.9370495 C501.917969,55.016901 510.973995,49.5545643 521.216976,54.0477768 C531.459956,58.5409893 532.822756,68.8929984 524.909724,83.5620156 C517.787995,97.0416531 508.731969,102.680194 498.137298,98.4072373 Z%22 id=%22\5f62\72b6\5907\4efd-2%22 fill=%22%23727272%22%3E%3C/path%3E            %3Cpath d=%22M114.94373,1 L91.4244392,1 C90.23014,1.00691054 89.1209593,1.62069457 88.4790327,2.6298908 L59.1568517,48.13468 L29.7907094,2.6298908 C29.1487828,1.62069457 28.0396021,1.00691054 26.8453029,1 L3.50185752,1 C2.19862707,1.02164531 1.0113361,1.75504765 0.406544992,2.91200768 C-0.198246115,4.06896771 -0.123883046,5.46458658 0.60041233,6.55043895 L44.2979354,69.587567 L44.2979354,111.832575 C44.2979354,113.949176 46.0102816,115.66528 48.1225677,115.66528 L70.1032131,115.66528 C71.1211723,115.676952 72.1009161,115.27701 72.8207711,114.555684 C73.5406262,113.834359 73.9397526,112.852613 73.9278454,111.832575 L73.9278454,69.587567 L117.801214,6.55043895 C118.55391,5.4773021 118.649534,4.07407047 118.049406,2.9083672 C117.449277,1.74266393 116.25271,1.00740076 114.94373,1 Z%22 id=%22\8def\5f84%22 fill=%22%23E60012%22%3E%3C/path%3E            %3Cpath d=%22M441.575497,115 L470.387787,6.0939219 C471.073256,3.50295189 469.528542,0.846873001 466.937572,0.161403652 C466.532557,0.0542523347 466.11537,-2.66453526e-15 465.69642,0 L444.376603,0 L444.376603,0 L424.024108,79.4220775 L405.742798,0 L374.578535,0 C370.829449,7.10542736e-15 367.571817,2.57646408 366.70813,6.22470835 L349.328932,79.635119 L349.328932,79.635119 L328.976437,0 L304.51485,0 C301.834739,8.8817842e-16 299.66208,2.17265907 299.66208,4.85276985 C299.66208,5.32328993 299.73051,5.79130891 299.865221,6.24213261 L332.363329,115 L332.363329,115 L362.529779,115 C366.107393,115 369.2219,112.555459 370.071889,109.080285 L386.705325,41.0746161 L386.705325,41.0746161 L387.133799,41.0746161 L405.306755,109.235826 C406.213008,112.634903 409.291298,115 412.809113,115 L441.575497,115 L441.575497,115 Z%22 id=%22\8def\5f84%22 fill=%22%23727272%22%3E%3C/path%3E            %3Cpath d=%22M625.841355,40.1210548 L625.841355,59.055099 L607.000541,59.055099 C599.975941,59.055099 595.323888,61.3841957 593.276985,65.7628974 C591.898239,68.3465239 591.30017,71.2760762 591.555725,74.1942272 L591.555725,111.717486 C591.575461,112.646674 591.19255,113.538929 590.505758,114.16411 C589.818965,114.789291 587.895534,115.086188 586.973644,114.978221 L565.062475,114.978221 L565.062475,63.0393658 C564.648112,57.4854384 566.305693,51.9750059 569.714528,47.5741641 C571.040263,45.8114371 572.606177,44.2434558 574.366581,42.9159708 C579.196607,39.2769829 585.026609,37.2118368 591.067451,36.9997535 L623.189685,36.9997535 C623.990002,36.9945905 624.754163,37.3333749 625.288083,37.9303723 C625.822003,38.5273697 626.074308,39.3251376 625.980917,40.1210548%22 id=%22\8def\5f84%22 fill=%22%23727171%22%3E%3C/path%3E            %3Cg id=%22\8d44\6e90-4%22 transform=%22translate(632.9994, 0)%22 fill=%22%23727171%22%3E                %3Cpath d=%22M79.0006097,115 L44.8436344,115 L28.74506,82.7663106 L28.74506,111.621797 C28.74506,113.487527 27.24087,115 25.3853576,115 L0.000938790757,115 L0.000938790757,3.42545366 C-0.0117519633,2.51320255 0.343055192,1.63457534 0.984644223,0.989453288 C1.62623325,0.344331238 2.50004865,-0.0124297228 3.40730381,0 L28.74506,0 L28.74506,60.9956674 L30.2382611,60.9956674 L45.9168727,33.3131686 L78.1140215,33.3131686 L53.4295408,71.4587136 L79.0006097,115 Z%22 id=%22\8def\5f84%22%3E%3C/path%3E            %3C/g%3E        %3C/g%3E    %3C/g%3E%3C/svg%3E") center center / contain no-repeat;z-index:1}.login-card:after{content:"";position:absolute;right:14px;bottom:10px;width:54px;height:18px;background:url(/assets/logo-a07f0e16.png) center center / contain no-repeat;opacity:.85;z-index:1}@keyframes loginCardIn{0%{opacity:0;transform:translateY(26px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.lc-bar{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--yy-red),var(--red-glow),var(--yy-red));background-size:200% 100%;animation:roleShimmer 3s ease-in-out infinite}.login-card .lc-title{font-size:20px;margin:16px 0 8px;text-align:center;color:var(--t1);font-weight:700;letter-spacing:-.2px;line-height:1.3}.login-card .lc-sub{color:var(--t3);font-size:13px;margin-bottom:8px;text-align:center;line-height:1.5}.login-card .lc-slogan{color:var(--t3);font-size:12px;margin:14px 0 12px;text-align:center;letter-spacing:.4px;font-weight:500}.fld{margin-bottom:12px}.fld label{display:block;font-size:13px;color:var(--t5);margin-bottom:8px;font-weight:500}.modal .fld{margin-bottom:16px}.inp{position:relative;display:flex;align-items:center;overflow:hidden}.inp-ic{position:absolute;left:14px;width:18px;height:18px;min-width:18px;max-width:18px;min-height:18px;max-height:18px;color:var(--t2);pointer-events:none;transition:color .2s;display:block;flex-shrink:0}.fld input{width:100%;height:44px;border:2px solid var(--line-dark);border-radius:10px;padding:0 14px 0 42px;font-size:15px;font-weight:600;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;background:var(--bg-input);color:var(--text-dark)}.fld input::placeholder{color:var(--t6);font-weight:400}.fld input:focus{border-color:var(--text-hint);background:var(--white);box-shadow:0 0 0 4px #0000000f}.inp:focus-within .inp-ic{color:var(--t1)}.btn-primary{width:100%;height:46px;background:linear-gradient(135deg,var(--yy-red),var(--yy-red-light));color:var(--white);border:none;border-radius:10px;font-size:15.5px;font-weight:600;margin-top:4px;cursor:pointer;letter-spacing:3px;transition:transform .15s,box-shadow .2s;box-shadow:0 6px 18px #e6001247}.modal .fld input,.modal .fld select,.modal .fld textarea{background:var(--white)!important;color:var(--t5)!important;border:1.5px solid var(--line-dark)!important;font-size:15px;height:44px;padding:0 16px;border-radius:10px;transition:all .2s}.modal .fld textarea{height:auto;min-height:140px;padding:14px 16px;line-height:1.6;resize:vertical}.modal .fld input::placeholder,.modal .fld textarea::placeholder{color:#aab0ba}.modal .fld .inp input{padding-left:42px}.modal .fld input:focus,.modal .fld select:focus,.modal .fld textarea:focus{border-color:var(--yy-red)!important;background:var(--white)!important;box-shadow:0 0 0 3px #e6001214!important}.inp:focus-within .inp-ic{color:var(--yy-red)}.btn-primary{width:100%;height:48px;background:linear-gradient(135deg,var(--yy-red),var(--yy-red-light));color:var(--white);border:none;border-radius:10px;font-size:15.5px;font-weight:600;margin-top:12px;cursor:pointer;letter-spacing:3px;transition:transform .15s,box-shadow .2s;box-shadow:0 6px 18px #e6001247}.btn-primary:hover{box-shadow:0 8px 26px #e6001266;transform:translateY(-1px)}.btn-primary:active{transform:scale(.98)}.lc-foot{margin-top:22px;text-align:center;color:var(--t4);font-size:11.5px;letter-spacing:.5px}.menu-group{font-size:10.5px;text-transform:uppercase;letter-spacing:1.8px;color:#fff9;font-weight:600;padding:14px 16px 6px}.menu-item{display:flex;align-items:center;gap:10px;margin:2px 8px;padding:11px 14px;border-radius:10px;color:#fffc;border-left:none;transition:all .22s var(--ease-smooth);position:relative}.menu-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--white);border-radius:0 2px 2px 0;transition:height .22s var(--ease-smooth)}.menu-item:hover{background:#ffffff26;color:var(--white);transform:translate(2px)}.menu-item:hover:before{height:18px}.menu-item.active{background:#ffffff38;color:var(--white);font-weight:600;box-shadow:inset 0 0 24px #ffffff14}.menu-item.active:before{height:22px;box-shadow:0 0 10px #fff6}.menu-item .mi-ic{width:20px;text-align:center;flex:none;transition:transform .2s}.menu-item:hover .mi-ic{transform:scale(1.12)}.av-drop{position:absolute;top:48px;right:0;background:var(--white);border-radius:12px;box-shadow:0 8px 32px #00000026;min-width:180px;z-index:100;overflow:hidden}.av-info{padding:14px 16px;border-bottom:1px solid #f0f1f3}.av-info b{display:block;font-size:14px;color:var(--t1);margin-bottom:2px}.av-info span{font-size:12px}.av-act{padding:10px 16px;cursor:pointer;font-size:13px;transition:background .15s}.av-act:hover{background:var(--bg-panel)}.btn{height:34px;padding:0 16px;border-radius:9px;border:1.5px solid var(--line);background:linear-gradient(180deg,var(--white) 0%,var(--bg-layer) 100%);color:var(--t1);font-size:13px;font-weight:500;letter-spacing:.2px;transition:all .22s var(--ease-smooth);position:relative;overflow:hidden}.btn:after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .22s;background:radial-gradient(circle at center,rgba(230,0,18,.06),transparent 70%)}.btn:hover{border-color:#e600124d;box-shadow:0 3px 12px #0000000f;transform:translateY(-1px)}.btn:hover:after{opacity:1}.btn:active{transform:scale(.97);transition-duration:.1s}.btn-red{background:linear-gradient(135deg,var(--yy-red) 0%,var(--yy-red-light) 100%);color:var(--white);border:none;box-shadow:0 3px 14px #e600124d,inset 0 1px #ffffff2e;font-weight:600;letter-spacing:.3px}.btn-red:hover{box-shadow:0 5px 20px #e600126b,inset 0 1px #ffffff40;transform:translateY(-2px);filter:brightness(1.03)}.btn-red:active{transform:scale(.96);box-shadow:0 2px 8px #e6001259}.btn:disabled,.btn-red:disabled{opacity:.45;cursor:not-allowed;transform:none!important;box-shadow:none;filter:grayscale(.15)}.btn:not(.btn-red):not(.btn-warn){background:linear-gradient(180deg,var(--white) 0%,var(--bg-layer) 100%)}.btn:not(.btn-red):not(.btn-warn):hover{background:linear-gradient(180deg,var(--white) 0%,var(--bg-hover) 100%)}.btn-warn{background:linear-gradient(135deg,var(--gold),#d97706);border:none;color:var(--white);box-shadow:0 3px 12px #f5a62352,inset 0 1px #fff3;font-weight:600}.btn-warn:hover{box-shadow:0 5px 18px #f5a62370;transform:translateY(-2px)}.btn-warn:active{transform:scale(.96)}.btn-danger{background:transparent;color:var(--yy-red);border:2px solid var(--yy-red);font-weight:600;box-shadow:none}.btn-danger:hover{background:var(--yy-red);color:var(--white);box-shadow:0 3px 12px #e600124d;transform:translateY(-2px)}.btn-danger:active{transform:scale(.96)}.btn-sm{height:32px;padding:0 12px;font-size:11.5px;border-radius:7px}.btn-sm.btn-red{box-shadow:0 2px 8px #e6001240}.btn-sm.btn-danger{border-width:1.5px}.btn-red-outline{background:#fff;border:1.5px solid var(--yy-red);color:var(--yy-red);box-shadow:none;font-weight:600}.btn-red-outline:hover{background:var(--yy-red-tint);border-color:var(--yy-red);box-shadow:0 3px 12px #e6001226;transform:translateY(-1px)}.btn-red-outline:active{transform:scale(.97)}.card{background:linear-gradient(165deg,#fffffff2,#ffffffe0);border-radius:14px;padding:20px 24px;box-shadow:0 1px 3px #00000008,0 4px 16px #0000000b;border:1px solid var(--line);transition:box-shadow .3s var(--ease-smooth),transform .3s var(--ease-smooth)}.card:hover{box-shadow:0 2px 6px #0000000a,0 8px 30px #00000012}.card h3{font-size:15.5px;font-weight:700;letter-spacing:-.2px;margin-bottom:14px}.card h3:before{content:"";display:inline-block;margin-right:8px;vertical-align:-3px;width:4px;height:17px;background:linear-gradient(180deg,var(--yy-red),var(--red-glow));border-radius:3px;box-shadow:0 0 8px #e6001233}.kpi{background:linear-gradient(145deg,#fffffffa,#fafcffeb);border-radius:13px;padding:18px 20px;box-shadow:0 2px 12px #0000000a;border:1px solid var(--line);border-left:4px solid var(--yy-red);transition:transform .25s var(--ease-smooth),box-shadow .25s;position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;top:-20px;right:-20px;width:80px;height:80px;background:#e600120a;pointer-events:none}.kpi:hover{transform:translateY(-2px);box-shadow:0 6px 24px #00000012}.kpi .k-num{color:var(--t1);font-size:30px;font-weight:800}table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}th{text-align:left;padding:12px 14px;border-bottom:1px solid rgba(0,0,0,.055);color:var(--t2);font-weight:700;font-size:11.5px;text-transform:uppercase;letter-spacing:.8px;background:linear-gradient(180deg,var(--bg-layer) 0%,var(--bg-panel) 100%);position:sticky;top:0;z-index:1;white-space:nowrap}td{text-align:left;padding:9px 14px;border-bottom:1px solid rgba(0,0,0,.055)}tbody tr{cursor:pointer;transition:background .18s}tbody tr:hover{background:linear-gradient(90deg,rgba(230,0,18,.025) 0%,rgba(255,245,245,.04) 50%,transparent 100%)}.status{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:11.5px;font-weight:600;letter-spacing:.3px;border:1px solid transparent;position:relative;overflow:hidden}.status:before{content:"";position:absolute;inset:0;border-radius:inherit;opacity:.6;background:inherit;filter:brightness(.95);z-index:-1}.st-pending{background:linear-gradient(135deg,var(--amber-bg),var(--amber-bg));color:var(--amber-text);border-color:#b8791f26;box-shadow:0 1px 4px #b8791f14,inset 0 1px #ffffff80}.st-evaluating{background:linear-gradient(135deg,var(--blue-tint),var(--blue-pale));color:var(--blue-deep);border-color:#2563eb26;box-shadow:0 1px 4px #2563eb14,inset 0 1px #ffffff80}.st-passed,.st-published{background:linear-gradient(135deg,var(--green-mint),var(--green-mint));color:var(--green-emerald);border-color:#05966926;box-shadow:0 1px 4px #0596691a,inset 0 1px #ffffff80}.st-rejected{background:linear-gradient(135deg,var(--red-pale),var(--red-pale));color:var(--red-rose);border-color:#dc262626;box-shadow:0 1px 4px #dc262614,inset 0 1px #ffffff80}.st-need_more{background:linear-gradient(135deg,#f3e8ff,var(--purple-pale));color:var(--purple);border-color:#7c3aed26;box-shadow:0 1px 4px #7c3aed14,inset 0 1px #ffffff80}.st-demo{background:linear-gradient(135deg,#f3f4f6,var(--gray-pale));color:var(--gray-base);border-color:#4b55631f;box-shadow:0 1px 3px #4b55630f}.st-generating{background:linear-gradient(135deg,#eff6ff,var(--blue-pale));color:var(--blue-deep);border-color:#2563eb26;box-shadow:0 1px 4px #2563eb14,inset 0 1px #ffffff80;animation:statusPulse 2s ease-in-out infinite;position:relative;overflow:hidden}.st-generating:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:genShimmer 2s ease-in-out infinite}@keyframes genShimmer{0%{left:-100%}to{left:100%}}@keyframes statusPulse{0%,to{box-shadow:0 1px 4px #2563eb14}50%{box-shadow:0 1px 10px #2563eb33}}.tagbtn{font-size:12px;padding:7px 16px;min-height:32px;border:1.5px solid var(--line);border-radius:20px;background:linear-gradient(180deg,var(--white) 0%,#fafafa 100%);color:var(--t2);font-weight:500;cursor:pointer;transition:all .22s var(--ease-smooth);position:relative}.tagbtn:hover{border-color:#e600124d;color:var(--t1);background:linear-gradient(180deg,var(--white) 0%,var(--bg-warm) 100%);box-shadow:0 2px 8px #0000000d}.tagbtn.on{background:var(--yy-red-tint);color:var(--yy-red);border-color:#e6001266;box-shadow:none;font-weight:600}.fld input,.fld select,.fld textarea{width:100%;height:44px;border:1.5px solid var(--line);border-radius:10px;padding:0 14px;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;background:var(--white)}.fld .inp input{height:44px;padding:0 14px 0 42px;font-size:15px;font-weight:600;background:var(--bg-input);color:var(--text-dark);border:2px solid var(--line-dark)}.fld .inp input::placeholder{color:var(--t6);font-weight:400}.fld .inp input:focus{background:var(--white);border-color:var(--yy-red);box-shadow:0 0 0 4px #e6001214}.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--yy-red);box-shadow:0 0 0 3px #e6001214;background:var(--white)}.fld input::placeholder{color:var(--t6)}.fld input:hover:not(:focus){border-color:var(--line-dark)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes drawerIn{0%{transform:translate(100%)}to{transform:translate(0)}}.console{background:linear-gradient(180deg,#0e1116,#131720);border:1px solid rgba(140,168,255,.08);box-shadow:inset 0 2px 8px #0000004d,0 0 0 1px #8ca8ff0a;border-radius:12px;max-height:320px;overflow-y:auto;padding:12px 14px;font-family:ui-monospace,monospace;font-size:12px;line-height:1.7;color:#c9d4e8}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:10px;flex-wrap:wrap}.card-head h3{margin-bottom:0}.stars{display:inline-flex;gap:6px;font-size:22px;color:var(--line-dark);cursor:pointer}.stars.ro{cursor:default}.stars .s{padding:2px;transition:transform .15s,color .15s}.stars .s:hover{transform:scale(1.12)}.stars .s.on{color:var(--gold);filter:none}.role-switcher{position:relative;background:transparent!important;min-height:32px;display:flex;align-items:center}.role-switcher *,.role-switcher button,.role-switcher div,.role-switcher span{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;box-sizing:border-box!important}.rs-btn{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding:0 13px;border-radius:16px;font-size:13px;height:32px;display:inline-flex;align-items:center;gap:6px;background:var(--bg-panel);color:var(--t1);border:1px solid var(--line);transition:all .2s var(--ease-smooth)}.rs-btn:hover{border-color:#e600124d;box-shadow:0 2px 8px #e6001214;background:linear-gradient(180deg,var(--white) 0%,var(--bg-warm) 100%)}.rs-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:160px;z-index:200;background:var(--white);color:var(--t1);border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 36px #0000001f,0 0 0 1px #0000000a;backdrop-filter:blur(12px);animation:rsPop .25s var(--ease-decisive) both}.rs-opt{transition:all .15s;border-radius:8px}.rs-opt:hover{background:linear-gradient(90deg,rgba(230,0,18,.04),transparent);transform:translate(2px)}.rs-opt.on{background:linear-gradient(90deg,#e6001214,#e6001208);box-shadow:inset 0 0 0 1px #e600121a}.content{padding:24px 24px 96px;max-width:1440px;margin:0 auto}#view{animation:viewFadeIn .25s var(--ease-snappy) both}@keyframes viewFadeIn{0%{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}#app{display:none}.layout{display:flex;min-height:100vh}.sidebar{width:224px;background:linear-gradient(180deg,#e60012,#c10010 40%,#b8000f);color:var(--white);position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transition:transform .25s;z-index:40;border-right:1px solid rgba(255,255,255,.15)}.sidebar .shead{padding:16px 18px;display:flex;align-items:center;gap:8px;color:var(--white);background:transparent;border-bottom:1px solid rgba(255,255,255,.2)}.sidebar .shead img{height:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.sidebar .shead b{font-size:15px;font-weight:600}.bndot{position:absolute;top:-2px;right:-4px;background:var(--yy-red);color:var(--white);font-size:9px;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1}.mdot{margin-left:auto;background:#ffffff3d;color:#fff;font-size:10px;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}#myTabs{border-bottom:1px solid var(--line)}.tab-btn{background:none;border:none;padding:8px 16px;margin-bottom:-1px;font-size:13px;color:var(--t3);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab-btn.active{color:var(--yy-red);border-bottom-color:var(--yy-red);font-weight:600}.tab-btn:hover{color:var(--t5)}.main{margin-left:224px;flex:1;min-width:0}.topbar{height:56px;background:#ffffffd1;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 1px #ffffffe6 inset;display:flex;align-items:center;padding:0 18px;position:sticky;top:0;z-index:30}.topbar .pg-title{position:relative;font-size:16px;font-weight:700;letter-spacing:-.2px}.topbar .pg-title:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2.5px;background:linear-gradient(90deg,var(--yy-red),transparent);border-radius:2px;opacity:.6}.topbar .spacer{flex:1}.bell{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;position:relative;font-size:19px;cursor:pointer;transition:background .2s}.bell:hover{background:var(--bg-hover)}.topbar>*+*{margin-left:12px}.bell .bd{position:absolute;top:-4px;right:-4px;background:var(--yy-red);color:var(--white);font-size:10px;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.rchip{font-size:12px;padding:2px 8px;border-radius:4px;background:var(--yy-red-tint);color:var(--yy-red);font-weight:500;letter-spacing:.02em;white-space:nowrap}.avatar{width:32px;height:32px;border-radius:50%;background:var(--yy-red);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;box-shadow:0 2px 8px #e6001240,0 0 0 2px #e6001214;transition:transform .25s var(--ease-smooth)}.avatar:hover{transform:scale(1.08);cursor:pointer}.rs-dot{width:7px;height:7px;border-radius:50%;background:var(--yy-red);flex:none}.rs-caret{font-size:10px;color:var(--t3);margin-left:1px}@keyframes rsPop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.rs-check{color:var(--yy-red);font-weight:700}.rs-static{height:32px;display:flex;align-items:center;padding:0 13px;border:1px solid var(--line);border-radius:16px;background:var(--bg-panel)!important;background-color:var(--bg-panel)!important;font-size:13px;color:var(--t2)!important;appearance:none;-webkit-appearance:none}.page-head{display:flex;align-items:center;margin-bottom:16px;gap:10px}.page-head h2{font-size:19px;font-weight:800;letter-spacing:-.4px;background:linear-gradient(135deg,var(--t1) 30%,var(--t2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-head .sub{color:var(--t3);font-size:12.5px}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.kpi .k-lab{color:var(--t2);font-size:12px;margin-top:4px}.kpi .k-ic{position:absolute;top:12px;right:12px;font-size:20px;opacity:.6}.btn \2014  \5df2\5408\5e76\81f3\5347\7ea7\5c42  */ .muted{color:var(--t3);font-size:12px}td[colspan].muted{padding:32px 0;text-align:center}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.row-actions.mob-collapsed .mob-extra{display:none}.row-actions.mob-collapsed .m-more{display:inline-flex}.drawer-mask{position:fixed;inset:0;background:#0f11178c;backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);z-index:50;display:none}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(480px,92vw);background:linear-gradient(175deg,var(--white) 0%,var(--bg-layer) 100%);z-index:51;transform:translate(100%);transition:transform .25s;display:flex;flex-direction:column;border-top-left-radius:18px;border-bottom-left-radius:18px;box-shadow:-8px 0 40px #0000001a,-1px 0 #00000008;border-left:1px solid rgba(0,0,0,.04)}.drawer.open{animation:drawerIn .35s var(--ease-decisive) both}.drawer .d-head{padding:16px 18px;padding-top:calc(16px + env(safe-area-inset-top));border-bottom:1px solid rgba(0,0,0,.05);display:flex;align-items:center;font-weight:700;letter-spacing:-.2px;font-size:16px}.drawer .d-head .x{margin-left:auto;cursor:pointer;font-size:20px;color:var(--t3)}.drawer .d-body{padding:18px;padding-bottom:calc(18px + env(safe-area-inset-bottom));overflow-y:auto;flex:1}.d-body h4{margin:0 0 10px;font-size:14px}.d-body hr{margin:16px 0;border:none;border-top:1px dashed var(--line)}.d-foot .btn{height:36px;padding:0 18px}.modal-mask{position:fixed;inset:0;background:#0f11178c;backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);z-index:60;display:none;align-items:center;justify-content:center}.sim-chat{display:flex;flex-direction:column;gap:10px;height:54vh;min-height:300px;overflow-y:auto;padding:6px 2px 12px;-webkit-overflow-scrolling:touch}.sim-msg{display:flex}.sim-msg.sim-user{align-self:flex-end;justify-content:flex-end;max-width:88%}.sim-bubble{font-size:13.5px;line-height:1.7;padding:10px 14px;border-radius:14px;white-space:pre-wrap;word-break:break-word;width:100%}.sim-msg.sim-ai .sim-bubble{background:var(--bg2,#f5f5f5);border:1px solid var(--line,#eee);border-bottom-left-radius:4px;color:var(--t1,#333)}.sim-msg.sim-user .sim-bubble{background:var(--yy-red,#E60012);color:#fff;border-bottom-right-radius:4px}.sim-msg.sim-ai .sim-bubble p{margin:4px 0}.sim-msg.sim-ai .sim-bubble table{border-collapse:collapse;margin:8px 0;font-size:12.5px}.sim-msg.sim-ai .sim-bubble table td,.sim-msg.sim-ai .sim-bubble table th{border:1px solid #ddd;padding:4px 8px}.sim-msg.sim-ai .sim-bubble code{background:#0000000f;padding:1px 5px;border-radius:4px;font-size:12px}.sim-msg.sim-ai .sim-bubble pre{background:#282c34;color:#e6e6e6;padding:10px 12px;border-radius:8px;overflow-x:auto;font-size:12px}.sim-msg.sim-ai .sim-bubble pre code{background:none;color:inherit;padding:0}.sim-doc-bar{display:flex;align-items:center;gap:8px;padding:8px 4px 4px;font-size:13px;max-width:100%}.sim-doc-icon{font-size:16px}.sim-doc-name{color:var(--yy-red,#E60012);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.sim-doc-name:hover{color:#c4000f}.sim-doc-action{font-size:11px;color:var(--t3,#999);cursor:pointer;padding:2px 8px;border:1px solid var(--line,#e0e0e0);border-radius:6px;white-space:nowrap}.sim-doc-action:hover{background:var(--bg2,#f5f5f5);color:var(--yy-red,#E60012);border-color:var(--yy-red,#E60012)}.sim-tool-card{border:1px solid var(--line,#e3e3e3);border-radius:10px;background:#fff;margin:2px 0;max-width:92%;overflow:hidden}.sim-tool-head{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;cursor:pointer;font-size:13px;font-weight:600;color:#4a6cf7;background:#f6f8ff;user-select:none}.sim-tool-arrow{transition:transform .2s;font-size:11px;color:#999}.sim-tool-body{padding:8px 12px;border-top:1px solid var(--line,#eee);font-size:12px;color:var(--t3,#666);max-height:240px;overflow-y:auto}.sim-tool-body .sim-tool-args{margin-bottom:6px;color:var(--t4,#888)}.sim-tool-body code{background:#0000000d;padding:1px 5px;border-radius:4px;word-break:break-all}.sim-loading{display:flex;align-items:center;gap:8px;color:var(--t3,#999);font-size:12.5px;padding:6px 4px}.sim-loading .sim-dot{width:8px;height:8px;border-radius:50%;background:var(--yy-red,#E60012);animation:simPulse 1s infinite}@keyframes simPulse{0%,to{opacity:.25}50%{opacity:1}}.sim-input-row{display:flex;gap:10px;align-items:flex-end;margin-top:12px}.sim-input-row textarea{flex:1;border:1px solid var(--line,#ddd);border-radius:10px;padding:9px 12px;font-size:13.5px;resize:vertical;min-height:44px;max-height:120px;font-family:inherit;background:#fff;color:var(--t1,#333)}.sim-input-row textarea:focus{outline:none;border-color:var(--yy-red,#E60012);box-shadow:0 0 0 3px #e6001214}.sim-keypick{max-width:320px;border:1px solid var(--line,#ddd);border-radius:8px;padding:6px 10px;font-size:12.5px;background:#fff;color:var(--t1,#333)}.sim-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.sim-mode{font-size:12px;color:var(--t3,#888);background:var(--bg2,#f5f5f5);border:1px solid var(--line,#eee);border-radius:20px;padding:3px 10px}.sim-workshop-card{background:var(--card,#fff);border:1px solid var(--line,#eee);border-radius:14px;padding:16px 18px;margin-bottom:12px}.sim-workshop-card h3{margin:0 0 10px;font-size:14.5px;display:flex;align-items:center;gap:8px}.sim-session-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line,#eee);border-radius:10px;margin-bottom:8px;cursor:pointer;background:var(--card,#fff);transition:border-color .15s}.sim-session-item:hover{border-color:var(--yy-red,#E60012)}.sim-session-item .sim-sess-mode{font-size:11px;color:#fff;background:#4a6cf7;border-radius:4px;padding:1px 6px;white-space:nowrap}.sim-session-item .sim-sess-mode.skill{background:var(--yy-red,#E60012)}.sim-solidify-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:760px){.sim-solidify-grid{grid-template-columns:1fr}.sim-chat{height:58vh}}.modal{background:linear-gradient(170deg,var(--white) 0%,var(--card) 100%);border-radius:18px;width:560px;max-width:96vw;max-height:90vh;overflow-y:auto;border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 64px #00000026,0 0 0 1px #00000005,inset 0 1px #ffffffe6;animation:modalSlideIn .4s var(--ease-decisive) both}.modal .m-head{display:flex;justify-content:space-between;padding:18px 24px;border-bottom:1px solid rgba(0,0,0,.05);font-weight:700;font-size:16.5px;letter-spacing:-.2px}.modal .m-body{padding:24px}.modal .m-foot{padding:16px 24px;padding-bottom:calc(16px + env(safe-area-inset-bottom));border-top:1px solid rgba(0,0,0,.05);display:flex;justify-content:flex-end;gap:12px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.015))}.modal-sm{width:420px}.modal-lg{width:90vw;max-width:1100px}.modal-mcp{width:920px;max-width:96vw}.m-close{cursor:pointer;font-size:20px;color:var(--t3);line-height:1;padding:4px;border-radius:6px;transition:color .15s,background .15s}.m-close:hover{color:var(--yy-red);background:var(--bg-hover)}.settings-section{background:var(--bg-layer);border:1px solid #eaedf2;border-radius:12px;padding:20px 20px 12px;margin-bottom:16px}.settings-section-title{font-size:13px;font-weight:700;color:var(--t2);text-transform:none;letter-spacing:.2px;margin-bottom:14px;display:flex;align-items:center;gap:7px}.settings-section-title .sec-ic{width:20px;height:20px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px}.settings-fld{margin-bottom:12px;position:relative}.settings-fld label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--t2);margin-bottom:6px}.settings-fld label .req{color:var(--yy-red);font-weight:700}.settings-fld label .hint{font-weight:400;font-size:11px;color:var(--t6);margin-left:auto}.settings-fld input,.settings-fld select{width:100%;height:44px;background:var(--white);border:1.5px solid var(--line-dark);border-radius:10px;padding:0 14px;font-size:14px;color:var(--t1);transition:border-color .2s,box-shadow .2s;outline:none}.settings-fld input:focus,.settings-fld select:focus{border-color:var(--yy-red);box-shadow:0 0 0 3px #e6001214}.settings-fld input::placeholder{color:var(--t6);font-weight:400}.settings-fld .pwd-wrap{position:relative}.settings-fld .pwd-wrap input{padding-right:44px}.settings-fld .pwd-wrap .eye-btn{position:absolute;right:4px;top:4px;width:38px;height:38px;border:none;background:transparent;border-radius:8px;cursor:pointer;color:var(--t3);font-size:16px;display:flex;align-items:center;justify-content:center;transition:color .2s,background .2s}.settings-fld .pwd-wrap .eye-btn:hover{color:var(--t2);background:var(--bg-hover)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px dashed #e8ecf0;margin-top:0}.toggle-row .toggle-label{display:flex;flex-direction:column;gap:2px}.toggle-row .toggle-label strong{font-size:13px;color:var(--t2)}.toggle-row .toggle-label span{font-size:11px;color:var(--t6)}.toggle-switch{position:relative;width:48px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch .slider{position:absolute;inset:0;background:#d1d6dd;border-radius:28px;cursor:pointer;transition:background .25s}.toggle-switch .slider:before{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;background:var(--white);border-radius:50%;transition:transform .25s;box-shadow:0 1px 3px #00000026}.toggle-switch input:checked+.slider{background:var(--green);transform:translate(20px)}.toggle-switch input:focus-visible+.slider{box-shadow:0 0 0 3px #e6001233}.modal .m-foot .btn-cancel{height:42px;padding:0 24px;border-radius:10px;border:1.5px solid #dee2e8;background:var(--white);color:var(--text-sub);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.modal .m-foot .btn-cancel:hover{background:var(--bg-layer);border-color:var(--line-dark)}.modal .m-foot .btn-submit{height:42px;padding:0 28px}.btn-tconn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 18px;border-radius:8px;border:1.5px solid var(--line-dark);background:transparent;color:var(--blue-link);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px;white-space:nowrap}.btn-tconn:hover{background:var(--blue-tint);border-color:var(--blue-link)}.btn-tconn:disabled{opacity:.55;cursor:not-allowed}.btn-tconn .spinner{display:none;width:14px;height:14px;border:2px solid var(--line-dark);border-top-color:var(--blue-link);border-radius:50%;animation:spin .7s linear infinite}.btn-tconn.testing .spinner{display:inline-block}.btn-tconn.testing .btn-label{opacity:.7}.test-msg{display:none;align-items:flex-start;gap:8px;margin-top:10px;padding:10px 14px;border-radius:8px;font-size:13px;line-height:1.6;animation:fadeIn .25s}.test-msg.show{display:flex}.test-msg.ok{background:#edfaf1;border:1px solid #b7e4c7;color:#2d6a4f}.test-msg.fail{background:var(--red-tint-light);border:1px solid var(--yy-red-error);color:var(--yy-red-error)}.test-msg.warn{background:var(--amber-bg);border:1px solid rgba(184,121,31,.25);color:var(--amber-text)}.test-msg .t-ic{flex:0 0 auto;font-size:16px;line-height:1.4}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.inject-steps{display:flex;flex-direction:column;gap:8px}.inject-step{display:flex;align-items:center;gap:6px;padding:10px 14px;background:var(--bg-layer);border-radius:8px;font-size:13px;line-height:1.6}.tagbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.console .ok{color:#5dff9b}.console .warn{color:#ffd166}.console .info{color:#8ab4ff}.code-text{font-size:11px;color:var(--t6);font-family:ui-monospace,monospace}.dl-name{display:inline-block;color:#1976d2;font-size:11px;padding:1px 0;margin-left:6px;text-decoration:underline;cursor:pointer;font-family:ui-monospace,monospace;line-height:1.6}.dl-name:hover{color:#1565c0;text-decoration:underline}.pager{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}.pginfo{font-size:12px;color:var(--t6)}.pgctl{display:flex;align-items:center;gap:4px}.pgb{min-width:32px;height:32px;padding:0 6px;border:1px solid var(--line);background:var(--white);border-radius:6px;font-size:12px;color:var(--t2);cursor:pointer}.pgb:hover:not(:disabled){border-color:var(--line-dark);background:var(--bg-hover);color:var(--t1)}.pgb.on{background:var(--yy-red-tint);color:var(--yy-red);border-color:var(--yy-red);font-weight:600}.pgb:disabled{opacity:.4;cursor:not-allowed}.pgjump{width:38px;height:28px;border:1px solid var(--line-dark);border-radius:6px;text-align:center;font-size:12px;color:var(--t2);outline:none;transition:border-color .2s}.pgjump:focus{border-color:var(--yy-red);box-shadow:0 0 0 2px var(--yy-red-glow)}.pgd{color:var(--t3);font-size:12px;padding:0 2px}.pgsize{height:32px;border:1px solid var(--line);border-radius:6px;font-size:12px;color:var(--t2);padding:0 6px;margin-left:6px;background:var(--white)}.paging tbody{opacity:.5;transition:opacity .25s}.filterbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.filterbar input,.filterbar select,.filterbar .btn{height:40px;border:1px solid var(--line);border-radius:8px;padding:0 10px;font-size:13px;background:var(--white);color:var(--t1)}.filterbar input[type=date]{color:var(--t2)}.prog-wrap{display:flex;align-items:center;gap:8px;padding:4px 0}.prog-bar{flex:1;height:6px;background:linear-gradient(90deg,var(--yy-red-light),var(--yy-red));border-radius:3px;transition:width .3s ease;min-width:0}.prog-pct{font-size:12px;color:var(--t2);min-width:36px;text-align:right}.demo-grid{display:flex;flex-direction:column;gap:12px;margin-top:8px}.demo-item{border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--bg-panel)}.demo-item img,.demo-item video{max-width:100%;max-height:240px;aspect-ratio:16/9;object-fit:contain;border-radius:6px;display:block;background:#000}.demo-meta{font-size:11px;color:var(--t6);margin-top:6px;line-height:1.5}.bottom-nav{display:none}@media (max-width:900px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main{margin-left:0}.topbar .pg-title{font-size:15px}.role-chips .rchip{padding:3px 8px;font-size:11px}.topbar{padding:0 12px}.content{padding:14px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--white);border-top:1px solid var(--line);z-index:45;justify-content:space-around;padding:6px 0;padding-bottom:calc(6px + env(safe-area-inset-bottom))}.bn-item{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:11px;color:var(--t2);position:relative;padding:2px 6px;min-height:48px;justify-content:center}.bn-item.on{color:var(--yy-red)}.bn-item .bic{font-size:18px}.bn-item .bndot{position:absolute;top:0;right:6px;min-width:15px;height:15px;padding:0 4px;background:var(--yy-red);color:var(--white);font-size:9px;border-radius:8px;display:flex;align-items:center;justify-content:center}.content{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.drawer{width:100%;border-radius:0;border-left:none}.modal{width:100%;display:flex;flex-direction:column;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:hidden;border-radius:16px 16px 0 0;margin:auto 0 0}.modal .m-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal .m-foot{flex-shrink:0;position:sticky;bottom:0;background:#fff;min-height:44px}input,select,textarea,.filterbar input,.filterbar select{font-size:16px}.btn{min-height:44px;min-width:96px;white-space:nowrap}.btn-sm{min-height:40px;padding:0 14px;font-size:12.5px}.tagbtn{min-height:40px;padding:11px 16px;font-size:13px;white-space:nowrap}.tagbar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.pgsize{height:40px;font-size:14px}.code-text,.dl-name{font-size:12px}.dl-name{display:inline-flex;align-items:center;min-height:32px}.tab-btn{padding:12px 16px}.pgb{min-width:40px;height:40px}.bell,.avatar{width:40px;height:40px;display:flex;align-items:center;justify-content:center}.drawer .d-head .x,.rm{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center}.page-head{flex-wrap:wrap}.page-head .sub{flex-basis:100%}.page-head h2{white-space:nowrap;flex-shrink:0}.kpi{padding:14px 16px}.k-num{font-size:24px}.k-ic{font-size:16px}.rs-btn,.rs-static{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.topbar .pg-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar.open{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.drawer table,.modal table{min-width:0}.drawer .d-body,.modal .m-body{overflow-x:hidden}.drawer .d-body table,.modal .m-body table{display:block;overflow-x:auto}.drawer .d-body table tbody,.drawer .d-body table thead,.modal .m-body table tbody,.modal .m-body table thead{display:table;width:100%}#view tbody tr{cursor:pointer}.filterbar{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filterbar>input:first-child{grid-column:1/-1}.filterbar input,.filterbar select{width:100%!important;min-width:0!important;height:44px}.filterbar .date-range{grid-column:1/-1;display:flex;gap:6px;align-items:center}.filterbar .date-range input{flex:1}.code-text{word-break:break-all}#view tbody td{overflow-wrap:anywhere}#view tbody td:before{flex:0 0 min(72px,26vw)}#view tbody tr td[colspan]{justify-content:center}.fld textarea{min-height:96px;height:auto}#view table,#view thead,#view tbody,#view tr,#view td{display:block;width:100%}#view thead{display:none}#view tbody tr{background:var(--card,var(--white));border-radius:12px;box-shadow:var(--shadow,0 2px 10px rgba(0,0,0,.06));padding:12px 14px;margin-bottom:12px;border-bottom:none}#view tbody td{border-bottom:none;padding:5px 0;display:flex;align-items:flex-start;gap:10px;font-size:13px;flex-wrap:wrap;word-break:break-word}#view tbody td:before{content:attr(data-th);color:var(--t2,var(--t4));font-size:12px;font-weight:600;text-transform:none;letter-spacing:0;padding-top:1px}#view tbody td[data-th=""]:before,#view tbody td:not([data-th]):before{content:none;display:none}#view tbody td[data-th=""],#view tbody td:not([data-th]){flex-wrap:wrap}#view tbody td:empty{display:none}#view tbody td .row-actions{flex:1;justify-content:flex-start}#view tbody td .row-actions button{writing-mode:horizontal-tb;white-space:nowrap}#view tbody tr td[colspan]{text-align:center;color:var(--t3,var(--t3));padding:18px 0}#view tbody tr td[colspan]:before{content:none}#view tbody td span[style*=\539f\578b\5ba2\6237],.proto-chip{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:middle}.dl-name{word-break:break-all}#genHistory>div,#mySkillBody>div{flex-wrap:wrap}#view tbody td[style*="max-width:220px"]{white-space:normal!important;word-break:break-all;max-width:none!important}}#toast{position:fixed;top:calc(18px + env(safe-area-inset-top));left:50%;transform:translate(-50%);background:var(--bg-hover);color:var(--t1);padding:10px 18px;border-radius:8px;font-size:13px;font-weight:500;z-index:10050;opacity:0;transition:opacity .2s;pointer-events:none;border:1px solid var(--line-dark);box-shadow:0 6px 20px #0000001a;cursor:pointer;visibility:hidden}#toast.show{opacity:1;pointer-events:auto;visibility:visible;animation:toastIn .35s ease both}#toast.success{background:var(--green-accent);color:var(--green-dark);border-color:#a5d6a7}#toast.error{background:var(--yy-red-tint);color:var(--yy-red-error);border-color:#f5a5a5}#toast.info{background:var(--bg-hover);color:var(--t1);border-color:var(--line-dark)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.nav-mask{position:fixed;inset:0;background:#0006;z-index:39;display:none}.nav-mask.show{display:block}.role-sel-modal{display:none;position:fixed;inset:0;background:#0f11178c;backdrop-filter:saturate(180%) blur(8px);z-index:100;align-items:center;justify-content:center;opacity:0;transition:opacity .35s cubic-bezier(.16,1,.3,1)}.role-sel-modal.show{display:flex;opacity:1}.role-sel-modal.show .role-sel-box{animation:roleBoxIn .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes roleBoxIn{0%{transform:scale(.92) translateY(16px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.role-sel-box{background:linear-gradient(165deg,var(--white) 0%,var(--bg-layer) 100%);border-radius:20px;padding:36px 40px;width:440px;max-width:92vw;box-shadow:0 32px 80px #00000047,0 0 0 1px #fff9 inset;position:relative;overflow:hidden}.role-sel-box:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--yy-red),var(--red-glow),var(--yy-red));background-size:200% 100%;animation:roleShimmer 3s ease-in-out infinite}@keyframes roleShimmer{0%,to{background-position:0% 0%}50%{background-position:100% 0%}}.role-sel-box h2{font-size:22px;margin-bottom:6px;color:var(--t1);font-weight:700;letter-spacing:-.3px;line-height:1.3}.role-sel-box .sub{color:var(--t3);font-size:13.5px;margin-bottom:24px;line-height:1.5}.role-opt{display:flex;align-items:center;gap:14px;padding:15px 18px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer;transition:all .25s cubic-bezier(.25,1,.5,1);margin-bottom:10px;background:var(--white);position:relative;overflow:hidden}.role-opt:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:background .25s cubic-bezier(.25,1,.5,1)}.role-opt:hover{border-color:#f5b8b8;background:var(--bg-warm);transform:translateY(-1px);box-shadow:0 4px 16px #e6001214}.role-opt:hover:before{background:var(--yy-red)}.role-opt.selected{border-color:var(--yy-red);background:var(--red-tint-light);box-shadow:none;transform:none}.role-opt.selected:before{background:var(--yy-red);box-shadow:none}.role-opt .ri-name{font-size:15.5px;font-weight:600;color:var(--t1);transition:color .2s}.role-opt .ri-code{font-size:11.5px;color:var(--t3);margin-left:auto;padding:3px 10px;border-radius:6px;background:#f7f7f8;font-weight:500;letter-spacing:.3px;text-transform:uppercase;transition:all .2s}.role-opt.selected .ri-code{background:#fce8e8;color:var(--yy-red)}.role-sel-modal.show .role-opt:nth-child(1){animation:roleStaggerIn .4s cubic-bezier(.22,1,.36,1) .05s both}.role-sel-modal.show .role-opt:nth-child(2){animation:roleStaggerIn .4s cubic-bezier(.22,1,.36,1) .1s both}.role-sel-modal.show .role-opt:nth-child(3){animation:roleStaggerIn .4s cubic-bezier(.22,1,.36,1) .15s both}.role-sel-modal.show .role-opt:nth-child(4){animation:roleStaggerIn .4s cubic-bezier(.22,1,.36,1) .2s both}@keyframes roleStaggerIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.role-sel-bar{display:flex;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid #f0f0f2}.role-sel-bar button{flex:1;height:46px;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;border:none;transition:all .2s cubic-bezier(.25,1,.5,1);letter-spacing:.3px}.role-sel-bar button:active{transform:scale(.97)}.role-sel-bar .btn-rs-cancel{flex:0 0 120px;background:var(--bg-input);color:var(--t2);border:1.5px solid #e5e5ea}.role-sel-bar .btn-rs-cancel:hover{background:#ebebed;color:var(--t1)}.role-sel-bar .btn-rs-confirm{background:linear-gradient(135deg,var(--yy-red),var(--yy-red-light));color:var(--white);box-shadow:0 3px 14px #e600124d}.pwd-modal{display:none;position:fixed;inset:0;background:#0f11178c;backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);z-index:100;align-items:center;justify-content:center}.pwd-modal.show{display:flex}.pwd-box{background:var(--white);border-radius:20px;padding:32px 36px;width:400px;max-width:92vw;box-shadow:0 20px 60px #00000040;animation:modalSlideIn .4s var(--ease-decisive) both}.pwd-box h2{font-size:18px;margin-bottom:4px;color:var(--t1)}.pwd-box .sub{color:var(--t3);font-size:13px;margin-bottom:20px}.pwd-box input{width:100%;height:44px;border:1.5px solid var(--line-dark);border-radius:10px;padding:0 14px;font-size:15px;outline:none;box-sizing:border-box}.pwd-box input:focus{border-color:var(--yy-red)}.pwd-bar{display:flex;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #f0f0f2}.pwd-bar button{flex:1;height:42px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .2s}.pwd-bar .btn-cancel{background:var(--white);color:var(--text-sub);border:1.5px solid #dee2e8}.pwd-bar .btn-cancel:hover{background:var(--bg-layer);border-color:var(--line-dark)}.pwd-bar .btn-confirm{background:linear-gradient(135deg,var(--yy-red),var(--yy-red-light));color:var(--white);box-shadow:0 3px 12px #e6001247}.pwd-bar .btn-confirm:hover{box-shadow:0 5px 20px #e6001266;transform:translateY(-1px)}.pwd-bar .btn-confirm:active{transform:scale(.97)}.markdown-body{line-height:1.8;font-size:14px;color:#333}.markdown-body h2{font-size:20px;color:#e60012;margin:24px 0 12px;padding-bottom:6px;border-bottom:2px solid #eee}.markdown-body h3{font-size:16px;color:#444;margin:20px 0 8px}.markdown-body h4{font-size:14px;color:#555;margin:16px 0 6px}.markdown-body p{margin-bottom:10px}.markdown-body ul,.markdown-body ol{padding-left:24px;margin-bottom:10px}.markdown-body li{margin-bottom:4px}.markdown-body code{background:#f0f0f0;padding:2px 6px;border-radius:3px;font-size:13px;font-family:Courier New,monospace;color:#c7254e}.markdown-body pre{background:#1e1e1e;color:#d4d4d4;padding:16px;border-radius:6px;overflow-x:auto;font-size:13px;line-height:1.5;margin:12px 0}.markdown-body pre code{background:none;padding:0;color:inherit;font-size:inherit}.markdown-body blockquote{border-left:4px solid #E60012;padding:8px 16px;margin:12px 0;background:#fff5f5;color:#555}.markdown-body table{width:100%;border-collapse:collapse;margin:12px 0;font-size:13px}.markdown-body th{background:#f5f5f5;padding:8px 12px;text-align:left;border-bottom:2px solid #ddd;font-weight:700}.markdown-body td{padding:8px 12px;border-bottom:1px solid #eee}.markdown-body a{color:#2196f3}.markdown-body img{max-width:100%;border-radius:4px}.markdown-body hr{border:none;border-top:1px solid #eee;margin:16px 0}.markdown-body strong{color:#333}.modal-overlay{position:fixed;inset:0;background:#0f11178c;backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);z-index:100;display:flex;align-items:center;justify-content:center}.modal-hdr{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid #eee;font-size:16px;font-weight:700;color:var(--t1)}.modal-close{cursor:pointer;font-size:20px;color:#999;padding:0 4px;line-height:1;transition:color .2s}.modal-close:hover{color:var(--yy-red)}.modal-body{padding:20px 24px;overflow-y:auto}.modal-ft{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid #eee;background:var(--bg-layer)}.modal-ft .btn{min-width:80px;height:38px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:1.5px solid #dee2e8;background:var(--white);color:var(--text-sub);transition:all .2s}.modal-ft .btn:hover{background:var(--bg-layer);border-color:var(--line-dark)}.modal-ft .btn-primary{background:linear-gradient(135deg,var(--yy-red),var(--yy-red-light));color:var(--white);border:none;box-shadow:0 3px 12px #e6001247;min-width:80px;height:38px;width:auto;letter-spacing:normal;margin-top:0}.modal-ft .btn-primary:hover{box-shadow:0 5px 20px #e6001266;transform:translateY(-1px)}.field{margin-bottom:14px}.field label{display:block;font-size:13px;color:var(--t5);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:0 12px;border:1.5px solid var(--line-dark);border-radius:8px;font-size:14px;outline:none;box-sizing:border-box;background:var(--white);color:var(--t5);transition:border-color .2s}.field input,.field select{height:40px}.field textarea{padding:10px 12px;line-height:1.6;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--yy-red)}.badge{display:inline-block;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:500;white-space:nowrap}.badge-blue{background:#e8f0fe;color:#1967d2}.badge-green{background:#e6f4ea;color:#137333}.badge-gray{background:#f1f3f4;color:#5f6368}.org-node{cursor:pointer;padding:9px 12px;border-radius:8px;margin-bottom:4px;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--t2);border:1px solid transparent;transition:.15s;flex-wrap:wrap}.org-node:hover{background:#f5f5f5}.org-node.cur{background:#fdecee;border-color:#f3b5bc;color:var(--yy-red);font-weight:600}.org-node .ou-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-node .ou-count{background:#eee;border-radius:10px;padding:1px 8px;font-size:11px;color:#666}.org-node.cur .ou-count{background:#f3b5bc;color:#fff}.org-node .ou-chip{font-size:10px;background:#e8f0fe;color:#1967d2;padding:1px 6px;border-radius:6px;white-space:nowrap}.org-node .ou-chip-below{display:block;width:fit-content;margin-top:2px;margin-left:4px;flex-basis:100%}.org-node .ou-edit{flex:0 0 auto;min-width:24px;height:22px;padding:0 4px;font-size:11px;line-height:1;border-radius:5px;color:#1565c0;background:transparent;border:1px solid #bbdefb;opacity:.65;display:inline-flex;align-items:center;justify-content:center}.org-node .ou-edit:hover{opacity:1;background:#e3f2fd;color:#1565c0;border-color:#64b5f6}.org-node .ou-del{flex:0 0 auto;min-width:24px;height:22px;padding:0 4px;font-size:11px;line-height:1;border-radius:5px;color:#c62828;background:transparent;border:1px solid #f3b5bc;opacity:.65;display:inline-flex;align-items:center;justify-content:center}.org-node .ou-del:hover{opacity:1;background:#fdecee;color:#c62828;border-color:#e57373}.status.st-blue{background:#e6f0ff;color:#1a73e8;border:1px solid #bcd3f7}.status.st-warn{background:#fff4e5;color:#b26a00;border:1px solid #f3d9a8}.status.st-gray{background:#f1f3f4;color:#80868b;border:1px solid #dadce0}.know-detail-layout{display:flex;gap:20px;min-height:300px}.know-detail-body{flex:1;min-width:0;overflow-y:auto;max-height:60vh}.know-detail-sidebar{width:220px;flex-shrink:0;border-left:1px solid var(--line);padding-left:16px;font-size:13px}.know-detail-sidebar h4{font-size:13px;color:var(--t5);margin-bottom:8px;padding-bottom:4px;border-bottom:1px dashed var(--line)}.know-card-list{display:flex;flex-direction:column;gap:8px}.know-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-smooth)}.know-card:hover{border-color:var(--yy-red);box-shadow:var(--shadow)}.know-card .icon{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:18px}.know-card .icon.file{background:var(--blue-pale);color:var(--blue)}.know-card .icon.folder{background:var(--yy-red-light);color:var(--yy-red)}.know-card .info{flex:1;min-width:0}.know-card .info .title{font-size:14px;font-weight:600;color:var(--t2);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.know-card .info .meta{font-size:11px;color:var(--t3)}.know-card .arrow{color:var(--t3);font-size:14px;flex-shrink:0}.know-meta-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.know-meta-item{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--t4)}.know-meta-item svg{width:14px;height:14px}.know-detail-body h1{font-size:20px;color:var(--t1);margin:0 0 8px}.know-detail-body h2{font-size:17px;color:var(--t2);margin:16px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--line)}.know-detail-body h3{font-size:15px;color:var(--t3);margin:12px 0 4px}.know-detail-body p{font-size:14px;color:var(--t4);line-height:1.7;margin:6px 0}.know-detail-body code{background:var(--bg-layer);padding:1px 5px;border-radius:3px;font-size:12px;color:var(--yy-red)}.know-detail-body pre{background:var(--bg-layer);padding:12px;border-radius:6px;overflow-x:auto;font-size:12px;border:1px solid var(--line)}.know-detail-body blockquote{border-left:3px solid var(--yy-red);padding:4px 12px;margin:8px 0;color:var(--t5);background:var(--yy-red-light);border-radius:0 6px 6px 0}.know-detail-body ul,.know-detail-body ol{margin:6px 0;padding-left:20px}.know-detail-body li{font-size:14px;color:var(--t4);line-height:1.6}.know-detail-body a{color:var(--blue-link)}.know-detail-body a:hover{color:var(--yy-red)}.know-detail-body img{max-width:100%;border-radius:6px}.know-detail-body table{width:100%;border-collapse:collapse;margin:8px 0;font-size:13px}.know-detail-body th,.know-detail-body td{border:1px solid var(--line);padding:6px 10px;text-align:left}.know-detail-body th{background:var(--bg-layer);font-weight:600;color:var(--t3)}.know-search-bar{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:6px 12px;margin-bottom:12px;transition:border-color .2s}.know-search-bar:focus-within{border-color:var(--yy-red)}.know-search-bar input{flex:1;border:none;outline:none;background:transparent;font-size:13px;color:var(--t2)}.know-search-bar input::placeholder{color:var(--t3)}.know-search-bar .search-icon{color:var(--t3);font-size:14px;flex-shrink:0}.know-link-item{display:block;padding:4px 0;color:var(--blue-link);cursor:pointer;text-decoration:none;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.know-link-item:hover{color:var(--yy-red);text-decoration:underline}.know-link-item.broken{color:var(--t3);text-decoration:line-through;cursor:default}.know-tag{display:inline-block;padding:2px 8px;margin:2px 4px 2px 0;background:var(--blue-pale);color:var(--blue);border-radius:4px;font-size:11px;cursor:pointer;transition:background .2s}.know-tag:hover{background:var(--blue);color:#fff}.know-tabs{display:flex;gap:0;border-bottom:2px solid var(--line);margin-bottom:12px}.know-tab{background:none;border:none;padding:8px 20px;font-size:13px;color:var(--t3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.know-tab.active{color:var(--yy-red);border-bottom-color:var(--yy-red);font-weight:600}.know-tab:hover{color:var(--t5)}.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;padding:16px 0;align-items:center;justify-content:center}.tag-cloud-item{cursor:pointer;color:var(--blue);transition:all .2s;display:inline-block;padding:2px 4px}.tag-cloud-item:hover{color:var(--yy-red);transform:scale(1.1)}.tag-cloud-item .count{font-size:10px;color:var(--t3);margin-left:2px}.vault-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--t3);padding:4px 10px;border-radius:12px;background:var(--bg-layer);border:1px solid var(--line)}.vault-status .dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.vault-status .dot.stale{background:var(--orange)}#knowledge-graph{width:100%;height:70vh;min-height:500px;border-radius:12px;background:var(--bg-layer);border:1px solid var(--line);overflow:hidden;position:relative}#knowledge-graph svg{width:100%;height:100%}.graph-toolbar{position:absolute;top:12px;left:12px;display:flex;gap:8px;z-index:5}.graph-toolbar button{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;color:var(--t5);transition:all .2s}.graph-toolbar button:hover{border-color:var(--yy-red);color:var(--yy-red)}.graph-toolbar button.active{background:var(--yy-red);color:#fff;border-color:var(--yy-red)}.graph-node-tooltip{position:absolute;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:12px;pointer-events:none;box-shadow:0 4px 16px #0000001f;z-index:10;max-width:200px}.graph-legend{position:absolute;bottom:12px;right:12px;background:#ffffffe6;border:1px solid var(--line);border-radius:8px;padding:8px 12px;font-size:11px;z-index:5}.graph-legend-item{display:flex;align-items:center;gap:6px;margin:3px 0}.graph-legend-swatch{width:10px;height:10px;border-radius:50%}.graph-node{cursor:pointer;transition:transform .3s var(--ease-smooth)}.graph-node:hover{transform:scale(1.08)}.graph-node.dimmed{opacity:.2}.graph-node.highlighted{opacity:1}.graph-edge{stroke:var(--line);stroke-width:1.5;transition:all .3s}.graph-edge.highlighted{stroke:var(--yy-red);stroke-width:2.5}.graph-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-layer);z-index:2}.graph-loading .spinner{width:32px;height:32px;border:3px solid var(--line);border-top-color:var(--yy-red);border-radius:50%;animation:spin .8s linear infinite}.graph-loading .text{margin-top:8px;font-size:13px;color:var(--t4)}.graph-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--t3);font-size:13px;z-index:2}.graph-empty svg{width:48px;height:48px;margin-bottom:8px;color:var(--line)}.EasyMDEContainer .editor-toolbar{border-radius:8px 8px 0 0;border-color:var(--line-dark)}.EasyMDEContainer .CodeMirror{border-radius:0 0 8px 8px;border-color:var(--line-dark);font-family:Menlo,Monaco,Consolas,monospace;font-size:13px}.ai-suggestions{margin-top:12px;padding:12px;background:var(--blue-pale);border-radius:8px;border:1px solid var(--blue)}.ai-suggestions h4{font-size:13px;color:var(--blue);margin-bottom:8px}.ai-suggestion-item{display:flex;align-items:center;justify-content:space-between;padding:4px 0;font-size:12px}.ai-suggestion-item .title{color:var(--blue-link);cursor:pointer}.ai-suggestion-item .title:hover{text-decoration:underline}.ai-suggestion-item .add-link{color:var(--yy-red);cursor:pointer;font-size:11px;padding:2px 8px;border-radius:4px;border:1px solid var(--yy-red);background:transparent;transition:all .2s}.ai-suggestion-item .add-link:hover{background:var(--yy-red);color:#fff}.link-autocomplete{position:absolute;background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000001f;max-height:200px;overflow-y:auto;z-index:200;min-width:250px}.link-autocomplete-item{padding:6px 12px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:8px}.link-autocomplete-item:hover,.link-autocomplete-item.active{background:var(--bg-hover)}.link-autocomplete-item .type-badge{font-size:10px;padding:1px 6px;border-radius:3px}.link-autocomplete-item .match-preview{font-size:11px;color:var(--t4);margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;padding:8px 0}.template-card{padding:16px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;transition:all var(--ease-smooth)}.template-card:hover{border-color:var(--yy-red);box-shadow:var(--shadow)}.template-card h4{font-size:14px;color:var(--t2);margin-bottom:4px}.template-card p{font-size:12px;color:var(--t4);margin:0;line-height:1.5}.know-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--t3)}.know-empty .icon{font-size:36px;margin-bottom:12px;color:var(--line)}.know-empty .text{font-size:14px;text-align:center}.know-empty .subtext{font-size:12px;color:var(--t4);margin-top:4px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:768px){.know-detail-layout{flex-direction:column}.know-detail-sidebar{width:100%;border-left:none;border-top:1px solid var(--line);padding-left:0;padding-top:12px;margin-top:12px}.know-card{flex-direction:column;align-items:flex-start;gap:8px}.know-meta-row{gap:8px}.template-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}#knowledge-graph{height:50vh;min-height:350px}}.train-mod-item{transition:background .15s,color .15s,box-shadow .15s}.train-mod-item:hover:not(.train-mod-active){background:var(--bg-hover)}.train-mod-active{background:linear-gradient(135deg,#e60012,#c10010)!important;color:#fff!important;font-weight:600;box-shadow:inset 3px 0 #ff4d6a,0 2px 6px #e600122e;position:relative}.train-mod-active>span{color:#fff!important}.train-mod-active .train-mod-minutes{color:#ffffffc7!important}.train-mod-active .train-mod-done-icon{color:#fff!important}.train-mod-done>span:not(.train-mod-minutes){color:#999}.score-bars{margin:8px 0}.score-bar{margin-bottom:8px}.score-label{font-size:12px;color:#666;margin-bottom:3px;display:block}.score-track{height:8px;background:#eee;border-radius:4px;overflow:hidden;position:relative}.score-fill{height:100%;border-radius:4px;text-align:right;font-size:10px;color:#fff;padding-right:4px;line-height:8px;min-width:20px;transition:width .3s ease}.score-reason{font-size:11px;color:#999;margin-top:2px}.score-total{margin-top:12px;font-size:14px;text-align:center}.miss input,input.miss{border-color:#e60012!important;background:var(--red-tint-light)}.warn-box{background:#fff8e1;border:1px solid #a06400;color:#a06400;padding:8px 10px;border-radius:8px;font-size:13px;margin:8px 0}.ok-box{background:#eafaf0;border:1px solid #2e9e5b;color:#2e9e5b;padding:8px 10px;border-radius:8px;font-size:13px;margin:8px 0}#rq-doc-preview{width:100%;height:65vh;min-height:400px;border:1px solid var(--line);border-radius:8px;background:#fff;margin-top:6px}.req-fields{max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fafafa;margin-top:8px}.up-zone{border:2px dashed var(--line);border-radius:12px;padding:22px 16px;background:var(--bg-layer);text-align:center;cursor:pointer;transition:all .2s;position:relative}.up-zone:hover,.up-zone.drag{border-color:var(--yy-red);background:var(--red-tint-light)}.up-zone .up-ic{font-size:32px;line-height:1;margin-bottom:6px;color:var(--t4);transition:color .2s}.up-zone:hover .up-ic,.up-zone.drag .up-ic{color:var(--yy-red)}.up-zone .up-tt{font-size:14px;color:var(--t5);font-weight:500;margin-bottom:4px}.up-zone .up-st{font-size:12px;color:var(--t3)}.up-zone .up-st b{color:var(--yy-red)}.up-file{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-top:8px}.up-file .ic{flex:0 0 36px;height:36px;border-radius:8px;background:var(--bg-hover);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--t2)}.up-file .ic.audio{background:#fff0f0;color:#e60012}.up-file .ic.image{background:#f0f8ff;color:#1e88e5}.up-file .ic.docx{background:#f0f0ff;color:#5c6bc0}.up-file .ic.text{background:#f0fff0;color:#43a047}.up-file .meta{flex:1;min-width:0}.up-file .nm{font-size:13.5px;color:var(--t1);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-file .sz{font-size:11.5px;color:var(--t3);margin-top:2px}.up-file .rm{flex:0 0 28px;height:28px;border:none;background:transparent;color:var(--t3);font-size:18px;cursor:pointer;border-radius:6px}.up-file .rm:hover{background:#f5f5f5;color:#e60012}.up-spin{display:inline-block;width:14px;height:14px;border:2px solid #f0f0f0;border-top-color:var(--yy-red);border-radius:50%;animation:upSpin .8s linear infinite;vertical-align:middle;margin-right:6px}@keyframes upSpin{to{transform:rotate(360deg)}}.up-prev{margin-top:10px;padding:10px 12px;background:var(--bg-layer);border-radius:8px;border:1px solid #eef0f3;font-size:12px;color:#555;line-height:1.6;max-height:140px;overflow:auto;white-space:pre-wrap;word-break:break-all}.cust-row{display:flex;gap:8px;align-items:flex-start}.cust-row .inp{flex:1}.cust-row .verify-btn{flex:0 0 88px;height:44px;border:1.5px solid var(--line);background:#fff;border-radius:10px;cursor:pointer;font-size:13px;color:var(--t5);transition:all .2s;font-weight:500}.cust-row .verify-btn:hover{border-color:var(--yy-red);color:var(--yy-red)}.cust-row .verify-btn:disabled{opacity:.5;cursor:not-allowed}.cust-row .verify-btn.checking{background:var(--bg-layer)}.cust-status{margin-top:6px;padding:8px 12px;border-radius:8px;font-size:12.5px;line-height:1.5;display:none}.cust-status.show{display:block}.cust-status.ok{background:#eafaf0;border:1px solid #b8e0c5;color:#2e7d4f}.cust-status.warn{background:#fff8e1;border:1px solid #f0d99a;color:#a06400}.cust-status.err{background:#fdecec;border:1px solid #f0b8b8;color:#c62828}.cust-status.checking{background:#eef2f7;border:1px solid var(--line);color:#456}.cust-status .ic{display:inline-block;width:16px;height:16px;border-radius:50%;text-align:center;line-height:16px;font-size:11px;margin-right:6px;vertical-align:middle}.cust-status.ok .ic{background:#2e7d4f;color:#fff}.cust-status.warn .ic{background:#a06400;color:#fff}.cust-status.err .ic{background:var(--yy-red-error);color:#fff}.cust-status.checking .ic{background:transparent;color:#456}.cust-status .sug{margin-top:6px;padding-top:6px;border-top:1px dashed rgba(0,0,0,.1);font-size:12px}.cust-status .sug a{color:#1a73e8;cursor:pointer;text-decoration:underline;margin-right:8px}.cust-drop{position:absolute;top:100%;left:0;right:0;z-index:100;background:#fff;border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 8px 24px #0000001f;max-height:220px;overflow-y:auto;display:none}.cust-drop.show{display:block}.cust-drop .item{padding:10px 14px;font-size:13px;cursor:pointer;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;align-items:center}.cust-drop .item:hover,.cust-drop .item.hl{background:#fdf2f3}.cust-drop .item .cnt{color:var(--t2);font-size:11px}.cust-drop .item:last-child{border-bottom:none}.cust-row .inp{position:relative;overflow:visible}.rq-customer-ok #rq-customer{border-color:#43a047!important;box-shadow:0 0 0 3px #43a0471a!important}.rq-customer-err #rq-customer{border-color:var(--yy-red)!important;background:var(--red-tint-light)!important}.pw-toolbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff;border-bottom:2px solid #E60012;box-shadow:0 2px 8px #00000014;margin:-20px -20px 20px}.pw-toolbar .pw-title{font-weight:700;font-size:15px;color:#333;margin-right:auto}.pw-toolbar button{padding:6px 14px;border-radius:6px;border:1px solid #ddd;background:#fff;font-size:13px;cursor:pointer;font-weight:500;white-space:nowrap}.pw-toolbar button:hover{background:#f5f5f5;border-color:#bbb}.pw-toolbar .pw-btn-red{background:#e60012;color:#fff;border:none}.pw-toolbar .pw-btn-red:hover{background:#c5000f}.pw-body{max-width:860px;margin:0 auto;padding:0 20px}body{font-family:Microsoft YaHei,\5fae\8f6f\96c5\9ed1,sans-serif;font-size:14px;line-height:1.8;color:var(--t5);padding:8px}h2{color:#e60012;border-bottom:2px solid #E60012;padding-bottom:6px}h3{color:#c41218}table{border-collapse:collapse;width:100%}th,td{border:1px solid #ddd;padding:8px;text-align:left}th{background:#f5f5f5}" + css + " body{font-family:Microsoft YaHei,\5fae\8f6f\96c5\9ed1,sans-serif;font-size:13px;line-height:1.7;color:#333;padding:12px}table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}td,th{border:1px solid #e0e0e0;padding:6px 10px}th{background:#fafafa}h2,h3{color:#e60012}
