.login[data-v-6dc31473]{min-height:100%;display:grid;place-items:center;padding:32px 16px;position:relative;overflow:hidden}.wecom-boot[data-v-6dc31473]{color:var(--ink-muted);letter-spacing:.04em}.glow[data-v-6dc31473]{position:absolute;inset:auto -20% -30% 40%;height:60%;background:radial-gradient(circle,rgba(61,214,198,.22),transparent 65%);pointer-events:none}.panel[data-v-6dc31473]{width:min(440px,100%);max-height:min(96vh,860px);overflow:auto;padding:36px 32px 28px;border-radius:20px;background:linear-gradient(160deg,#243041eb,#1a222de0);border:1px solid var(--line);box-shadow:var(--shadow-card);position:relative;z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.eyebrow[data-v-6dc31473]{margin:0 0 8px;font-size:11px;letter-spacing:.18em;color:var(--accent);font-weight:600}h1[data-v-6dc31473]{margin:0;font-family:var(--serif);font-size:2.2rem;font-weight:700;letter-spacing:-.02em}.sub[data-v-6dc31473]{margin:8px 0 22px;color:var(--ink-muted);font-size:.95rem}.wecom-block[data-v-6dc31473],form[data-v-6dc31473]{display:grid;gap:12px}label[data-v-6dc31473]{display:grid;gap:6px;font-size:.8rem;color:var(--ink-muted)}input[data-v-6dc31473]{border:1px solid var(--line);background:#00000040;border-radius:10px;padding:12px 14px;outline:none;transition:border-color .2s,box-shadow .2s}input[data-v-6dc31473]:focus{border-color:#3dd6c68c;box-shadow:0 0 0 3px var(--accent-soft)}button[data-v-6dc31473]{border:0;border-radius:10px;padding:13px 16px;background:linear-gradient(135deg,#3dd6c6,#2bb8a8);color:#06241f;font-weight:700;cursor:pointer;transition:transform .15s ease,filter .15s}button[data-v-6dc31473]:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.05)}button[data-v-6dc31473]:disabled{opacity:.65;cursor:wait}.or[data-v-6dc31473]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;color:var(--ink-muted);font-size:.8rem}.or[data-v-6dc31473]:before,.or[data-v-6dc31473]:after{content:"";height:1px;background:var(--line)}.qr[data-v-6dc31473]{min-height:320px;display:grid;place-items:center;border-radius:12px;overflow:hidden;background:#0000002e}.qr[data-v-6dc31473] iframe{border:0;max-width:100%}.hint[data-v-6dc31473]{margin:0;color:var(--ink-muted);font-size:.8rem;line-height:1.5}button.text[data-v-6dc31473]{background:transparent;color:var(--accent);font-weight:600;padding:8px 4px}button.text[data-v-6dc31473]:hover:not(:disabled){transform:none;filter:none;text-decoration:underline}.err[data-v-6dc31473]{margin:0;color:var(--danger);font-size:.85rem}.field[data-v-9265a725]{display:grid;gap:6px;margin-bottom:10px;font-size:12px;color:var(--fb-ink2)}.field.row[data-v-9265a725]{grid-template-columns:1fr auto;align-items:center}.sheet-mask[data-v-9265a725]{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet[data-v-9265a725]{width:min(480px,100%);background:#fff;border-radius:16px 16px 0 0;padding:18px 16px 28px}:root{--bg-deep: #0f1419;--bg-board: #1a222d;--bg-column: rgba(255, 255, 255, .04);--bg-column-hover: rgba(255, 255, 255, .07);--bg-card: #243041;--bg-card-lift: #2c3a4f;--ink: #e8eef7;--ink-muted: #8b9bb0;--ink-faint: #5c6b7e;--line: rgba(255, 255, 255, .08);--accent: #3dd6c6;--accent-soft: rgba(61, 214, 198, .16);--warn: #f0b429;--danger: #ff6b6b;--dev: #6c8cff;--prod: #f0a35e;--dept: #c084fc;--other: #94a3b8;--st-backlog: #9bb0c9;--st-accepted: #5ec8ff;--st-in-progress: #f0b429;--st-review: #c084fc;--st-done: #3ecf8e;--st-rejected: #ff6b6b;--shadow-card: 0 1px 0 rgba(255, 255, 255, .04), 0 8px 24px rgba(0, 0, 0, .28);--shadow-lift: 0 12px 40px rgba(0, 0, 0, .45), 0 0 0 1px rgba(61, 214, 198, .35);--radius: 12px;--font: "Outfit", "Segoe UI", sans-serif;--serif: "Source Serif 4", Georgia, serif}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:var(--font);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,rgba(61,214,198,.12),transparent 55%),radial-gradient(900px 500px at 90% 0%,rgba(108,140,255,.1),transparent 50%),linear-gradient(165deg,#121820 0%,var(--bg-deep) 45%,#151c26 100%);background-attachment:fixed;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}::-webkit-scrollbar-track{background:transparent}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 8px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap;color:var(--st, var(--ink-muted));background:color-mix(in srgb,var(--st, #8b9bb0) 18%,transparent);border:1px solid color-mix(in srgb,var(--st, #8b9bb0) 42%,transparent)}.status-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.tone-backlog{--st: var(--st-backlog)}.tone-accepted{--st: var(--st-accepted)}.tone-in-progress{--st: var(--st-in-progress)}.tone-review{--st: var(--st-review)}.tone-done{--st: var(--st-done)}.tone-rejected{--st: var(--st-rejected)}.fb-app{--fb-bg: #f5f6f8;--fb-card: #fff;--fb-line: #e4e7ec;--fb-line2: #f0f2f5;--fb-ink: #1a1d21;--fb-ink2: #5a6472;--fb-ink3: #8c949f;--fb-blue: #185fa5;--fb-blue-d: #0c447c;--fb-blue-bg: #e6f1fb;--fb-green: #3b6d11;--fb-green-bg: #eaf3de;--fb-amber: #854f0b;--fb-amber-bg: #faeeda;--fb-red: #a32d2d;--fb-red-bg: #fcebeb;--fb-r: 12px;min-height:100vh;min-height:100dvh;background:var(--fb-bg);color:var(--fb-ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,PingFang SC,sans-serif;font-size:14px;line-height:1.6}.fb-app .phone-page{max-width:480px;margin:0 auto;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--fb-bg)}.fb-app .pnav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:center;height:44px;border-bottom:1px solid var(--fb-line2);font-size:15px;font-weight:500;background:var(--fb-card);flex-shrink:0}.fb-app .pnav .back{position:absolute;left:12px;color:var(--fb-ink3);font-size:22px;line-height:1;border:none;background:none;padding:4px 8px;cursor:pointer}.fb-app .pnav .act{position:absolute;right:12px;color:var(--fb-blue);font-size:13px;border:none;background:none;cursor:pointer;font-weight:500}.fb-app .pbody{flex:1;padding:10px 12px 80px;display:flex;flex-direction:column;gap:0}.fb-app .pbody.no-tabbar{padding-bottom:16px}.fb-app .pcard{background:var(--fb-card);border-radius:8px;padding:12px;margin-bottom:8px}.fb-app .plabel{font-size:12px;color:var(--fb-ink3);margin-bottom:6px;display:flex;justify-content:space-between;align-items:center}.fb-app .plabel .req{color:#d85a30}.fb-app .pinput,.fb-app select.pinput,.fb-app textarea.pinput{width:100%;border:1px solid #dce0e6;border-radius:6px;padding:8px 10px;font-size:14px;color:var(--fb-ink);background:#fff;box-sizing:border-box}.fb-app textarea.pinput{min-height:88px;resize:vertical;line-height:1.55}.fb-app .pinput.pick{display:flex;justify-content:space-between;align-items:center;cursor:pointer;color:var(--fb-ink)}.fb-app .pinput.pick.muted{color:var(--fb-ink3)}.fb-app .prow{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;border-bottom:1px solid #f4f6f8;font-size:13px}.fb-app .prow:last-child{border-bottom:none}.fb-app .prow .k{color:var(--fb-ink3);flex-shrink:0}.fb-app .prow .v{color:var(--fb-ink);text-align:right}.fb-app .pbtn{display:block;width:100%;background:var(--fb-blue);color:#fff;border:none;border-radius:8px;text-align:center;padding:12px;font-size:15px;font-weight:500;cursor:pointer}.fb-app .pbtn:disabled{opacity:.45;cursor:not-allowed}.fb-app .pbtn2{display:block;flex:1;background:#fff;border:1px solid #dce0e6;color:var(--fb-ink2);border-radius:8px;text-align:center;padding:11px;font-size:14px;cursor:pointer}.fb-app .ptag{display:inline-block;font-size:11px;padding:2px 7px;border-radius:4px;font-weight:500}.fb-app .ptag.blue{background:var(--fb-blue-bg);color:var(--fb-blue-d)}.fb-app .ptag.green{background:var(--fb-green-bg);color:var(--fb-green)}.fb-app .ptag.gray{background:#f1f3f5;color:var(--fb-ink2)}.fb-app .ptag.amber{background:var(--fb-amber-bg);color:var(--fb-amber)}.fb-app .ptag.red{background:var(--fb-red-bg);color:var(--fb-red)}.fb-app .seg{display:flex;border:1px solid #dce0e6;border-radius:6px;overflow:hidden}.fb-app .seg button{flex:1;text-align:center;padding:8px;font-size:13px;color:var(--fb-ink3);background:#fff;border:none;cursor:pointer}.fb-app .seg button.on{background:var(--fb-blue-bg);color:var(--fb-blue-d);font-weight:500}.fb-app .item{background:var(--fb-card);border-radius:8px;padding:10px 12px;margin-bottom:8px;border-left:3px solid var(--fb-blue);cursor:pointer;text-align:left;width:100%;border-top:none;border-right:none;border-bottom:none}.fb-app .item.warn{border-left-color:#e24b4a}.fb-app .item.done{border-left-color:#b4b2a9}.fb-app .item.amber-left{border-left-color:#ef9f27}.fb-app .iline{display:flex;justify-content:space-between;align-items:center;gap:8px}.fb-app .ititle{font-size:14px;font-weight:500;color:var(--fb-ink);margin:4px 0 2px;line-height:1.45}.fb-app .idesc{font-size:12px;color:var(--fb-ink3);line-height:1.5}.fb-app .tbar{height:3px;border-radius:2px;background:#f0f2f5;margin-top:8px;overflow:hidden}.fb-app .tbar i{display:block;height:100%;background:var(--fb-blue)}.fb-app .tbar i.warn{background:#e24b4a}.fb-app .tbar i.mid{background:#ef9f27}.fb-app .chip{display:inline-block;font-size:12px;padding:5px 10px;border-radius:14px;border:1px solid #dce0e6;color:var(--fb-ink2);margin:0 6px 6px 0;cursor:pointer;background:#fff}.fb-app .chip.on{background:var(--fb-blue-bg);border-color:#85b7eb;color:var(--fb-blue-d)}.fb-app .stars{font-size:28px;letter-spacing:6px;color:#ef9f27;cursor:pointer;-webkit-user-select:none;user-select:none}.fb-app .stars .off{color:#dde1e6}.fb-app .tabs-row{display:flex;gap:14px;padding:0 2px 10px;font-size:13px;color:var(--fb-ink3);overflow-x:auto}.fb-app .tabs-row button{border:none;background:none;padding:0 0 4px;color:inherit;cursor:pointer;white-space:nowrap;font-size:inherit}.fb-app .tabs-row button.on{color:var(--fb-blue);font-weight:500;border-bottom:2px solid var(--fb-blue)}.fb-app .assign-hint{margin-top:8px;font-size:12px;color:#085041;background:#e1f5ee;border-radius:6px;padding:8px 10px}.fb-app .tl{font-size:12px;color:var(--fb-ink2);line-height:1.85;padding-left:10px;border-left:2px solid #f0f2f5}.fb-app .tl b{color:var(--fb-ink);font-weight:500}.fb-app .fb-tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:#fff;border-top:1px solid var(--fb-line2);padding:6px 0 calc(6px + env(safe-area-inset-bottom));z-index:30}.fb-app .fb-tabbar button{flex:1;border:none;background:none;font-size:11px;color:var(--fb-ink3);padding:4px;cursor:pointer;position:relative}.fb-app .fb-tabbar button.on{color:var(--fb-blue);font-weight:500}.fb-app .fb-tabbar .badge{position:absolute;top:0;right:calc(50% - 22px);min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#e24b4a;color:#fff;font-size:10px;line-height:16px;text-align:center}.fb-app .fab{position:fixed;right:max(16px,calc(50% - 220px));bottom:calc(72px + env(safe-area-inset-bottom));width:52px;height:52px;border-radius:50%;background:var(--fb-blue);color:#fff;border:none;font-size:28px;line-height:1;box-shadow:0 4px 12px #185fa559;cursor:pointer;z-index:25}.fb-app .hint-foot{font-size:11px;color:#b4b2a9;text-align:center;padding:8px 0}.fb-app .err{color:var(--fb-red);font-size:13px;margin:8px 0}.fb-app .success-icon{width:56px;height:56px;border-radius:50%;background:var(--fb-green-bg);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--fb-green);font-size:28px}.fb-app .kpi4{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.fb-app .kbox{background:#fafbfc;border:1px solid #f0f2f5;border-radius:8px;padding:10px 12px}.fb-app .kbox .k{font-size:11px;color:var(--fb-ink3)}.fb-app .kbox .v{font-size:20px;font-weight:600;margin-top:2px}.fb-app .barrow{display:grid;grid-template-columns:72px 1fr 48px;align-items:center;gap:8px;font-size:12px;margin-bottom:8px}.fb-app .barrow .tk{height:14px;background:#f4f6f8;border-radius:4px;overflow:hidden}.fb-app .barrow .fl{height:100%;background:var(--fb-blue);border-radius:4px}.fb-app .profile-card{text-align:center;padding:24px 12px}.fb-app .profile-name{font-size:18px;font-weight:600;margin-top:8px}.fb-app .menu-row{display:flex;justify-content:space-between;align-items:center;padding:14px 12px;background:var(--fb-card);border-radius:8px;margin-bottom:8px;border:none;width:100%;font-size:14px;cursor:pointer;color:var(--fb-ink)}.fb-app .menu-row.danger{color:var(--fb-red);justify-content:center}.fb-app .range-seg{margin-bottom:12px}.fb-app.fb-pc{display:flex;min-height:100vh;min-height:100dvh;max-width:none;margin:0;background:#eef1f5}.fb-app .pc-side{width:220px;flex-shrink:0;background:#0f2744;color:#fff;display:flex;flex-direction:column;padding:20px 14px}.fb-app .pc-brand-title{font-size:18px;font-weight:650;letter-spacing:.02em}.fb-app .pc-brand-sub{margin-top:6px;font-size:12px;color:#ffffffa6}.fb-app .pc-nav{margin-top:28px;display:grid;gap:6px;flex:1}.fb-app .pc-nav button{position:relative;text-align:left;border:0;border-radius:8px;padding:11px 12px;background:transparent;color:#ffffffc7;font-size:14px;cursor:pointer}.fb-app .pc-nav button.on,.fb-app .pc-nav button:hover{background:#ffffff1f;color:#fff}.fb-app .pc-nav .badge{position:absolute;right:10px;top:50%;transform:translateY(-50%);min-width:18px;height:18px;border-radius:9px;background:#ff6b6b;color:#fff;font-size:11px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}.fb-app .pc-side-foot{display:grid;gap:8px}.fb-app .pc-create{border:0;border-radius:8px;padding:11px;background:#3dd6c6;color:#06241f;font-weight:700;cursor:pointer}.fb-app .pc-logout{border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:10px;background:transparent;color:#fffc;cursor:pointer}.fb-app .pc-main{flex:1;min-width:0;display:flex;flex-direction:column}.fb-app .pc-top{display:flex;align-items:center;justify-content:space-between;padding:18px 28px 12px;background:transparent}.fb-app .pc-top h1{margin:0;font-size:22px;font-weight:650}.fb-app .pc-top-btn{border:0;border-radius:8px;padding:9px 14px;background:var(--fb-blue);color:#fff;font-weight:600;cursor:pointer}.fb-app .pc-body{flex:1;padding:8px 28px 32px;overflow:auto}.fb-app .pc-body .item,.fb-app .pc-body .pcard{max-width:1100px}.fb-app .pc-body .kpi4{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1100px}@media (min-width: 900px){html,body,#app{background:#eef1f5;min-height:100%}.fb-app.phone-page{max-width:860px;min-height:calc(100vh - 40px);margin:20px auto;border-radius:12px;box-shadow:0 1px 2px #1018280f;background:var(--fb-bg);overflow:hidden}.fb-app.phone-page .pbody.no-tabbar{padding-bottom:32px}}.fb-app.fb-pc-sub{min-height:100vh;background:#eef1f5}.fb-app .pc-sub-bar{display:flex;align-items:center;gap:16px;padding:16px 28px;background:#fff;border-bottom:1px solid var(--fb-line)}.fb-app .pc-sub-bar h1{margin:0;flex:1;font-size:18px;font-weight:650}.fb-app .pc-sub-back{border:0;background:none;color:var(--fb-blue);font-size:14px;cursor:pointer;padding:0}.fb-app .pc-sub-act{margin-left:auto}.fb-app .pc-sub-body{max-width:920px;margin:0 auto;padding:20px 24px 40px}.fb-app .attach-box{margin-top:4px}.fb-app .attach-actions{display:flex;align-items:center;gap:10px}.fb-app .attach-add{display:inline-flex;cursor:pointer}.fb-app .attach-add.disabled{pointer-events:none;opacity:.5}.fb-app .attach-plus{width:44px;height:44px;border:1px dashed #cfd5dd;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:#b4b2a9;font-size:20px;background:#fff}.fb-app .attach-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.fb-app .attach-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#f7f8fa;border:1px solid var(--fb-line);border-radius:8px}.fb-app .attach-thumb{width:44px;height:44px;object-fit:cover;border-radius:6px;flex-shrink:0;background:#fff}.fb-app .attach-icon{width:44px;height:44px;border-radius:6px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:#e8edf3;color:#667085;font-size:13px;font-weight:600}.fb-app .attach-meta{flex:1;min-width:0}.fb-app .attach-name{font-size:13px;color:var(--fb-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fb-app .attach-sub{margin-top:2px;font-size:12px;color:var(--fb-ink2)}.fb-app .attach-rm{border:0;background:none;color:#d92d20;font-size:13px;cursor:pointer;padding:4px 2px;flex-shrink:0}.fb-app .attach-rm:disabled{opacity:.4;cursor:not-allowed}.fb-app .attach-link{display:block;border:0;background:none;padding:0;margin:0 0 4px;color:var(--fb-blue);font-size:14px;text-align:left;cursor:pointer;text-decoration:underline}.fb-app .attach-link:disabled{opacity:.5;cursor:wait}
