*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{color:#1f2430;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f6f8;font-family:-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,Roboto,Helvetica,Arial,sans-serif}:root{--sf-ink:#0f5c58;--sf-ink-soft:#0f5c588c;--sf-gold:#c08a2e;--sf-gold-strong:#9a6a00;--sf-gold-badge:#9a6a00;--sf-bg:#f5f6f8;--sf-surface:#fff;--sf-text:#1f2430;--sf-text-muted:#667085;--sf-border:#eaecef;--sf-shadow:0 10px 24px -12px #0f5c5847;--sf-shadow-strong:0 6px 16px -8px #0f5c588c;--sf-duration-fast:.16s;--sf-duration:.24s;--sf-duration-slow:.42s;--sf-ease:cubic-bezier(.22, 1, .36, 1);--sf-radius-control:8px;--sf-radius-card:14px;--sf-radius-hero:16px;--sf-radius-panel:20px;--sf-radius-pill:999px}html[data-sf-theme=dark]{--sf-ink:#3fc0b8;--sf-ink-soft:#3fc0b88c;--sf-gold:#e6b866;--sf-gold-strong:#e6b866;--sf-bg:#0f1417;--sf-surface:#151b20;--sf-text:#e6e9ec;--sf-text-muted:#9aa3ab;--sf-border:#223036;--sf-shadow:0 10px 24px -12px #00000080;--sf-shadow-strong:0 6px 16px -8px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#0f5c582e;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#0f5c5852}.sf-card{transition:transform var(--sf-duration) var(--sf-ease), box-shadow var(--sf-duration) var(--sf-ease), border-color var(--sf-duration-fast) linear}.sf-card:hover{box-shadow:var(--sf-shadow);transform:translateY(-2px)}.ant-btn:not(:disabled):active{transform:scale(.98)}.sf-cat-tile:active,.sf-filter-chip:active{transform:scale(.97)}.sf-board-card:active{transform:translateY(0)scale(.995)}@keyframes sfFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sf-fade-up{animation:sfFadeUp .35s var(--sf-ease) both}.sf-hero{color:#fff;isolation:isolate;background:linear-gradient(120deg,#0f5c58 0%,#12807a 55%,#0a3f3d 100%);position:relative;overflow:hidden}html[data-sf-theme=dark] .sf-hero{background:linear-gradient(120deg,#0d3a3d 0%,#16766e 55%,#082725 100%)}.sf-hero>*{z-index:1;position:relative}.ant-menu-light .ant-menu-item-selected,.ant-menu-dark .ant-menu-item-selected{box-shadow:var(--sf-shadow-strong);font-weight:600}.ant-menu-light .ant-menu-item-selected .anticon,.ant-menu-dark .ant-menu-item-selected .anticon{color:#fff}@keyframes sfHeartbeat{0%{transform:scale(1)}35%{transform:scale(1.18)}60%{transform:scale(.94)}to{transform:scale(1)}}.sf-heartbeat{animation:sfHeartbeat .48s var(--sf-ease)}@keyframes sfBurst{0%{opacity:0;transform:translate(-50%,4px)scale(.85)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-26px)scale(1)}}.sf-burst{pointer-events:none;color:var(--sf-ink);animation:sfBurst .9s var(--sf-ease) forwards;font-size:13px;font-weight:700;position:absolute;top:0;left:50%}@keyframes sfStamp{0%{opacity:0;transform:scale(.4)rotate(-8deg)}60%{opacity:1;transform:scale(1.12)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}.sf-stamp{animation:sfStamp .52s var(--sf-ease) forwards;display:inline-block}@keyframes sfGlow{0%,to{text-shadow:0 0 #c08a2e00}50%{text-shadow:0 0 12px #c08a2e59}}.sf-glow{animation:1.6s ease-in-out infinite sfGlow}.sf-cat-chip{background:color-mix(in srgb, var(--sf-cat) 12%, transparent);color:var(--sf-cat);border:1px solid color-mix(in srgb, var(--sf-cat) 28%, transparent);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.6;display:inline-flex}.sf-cat-dot{background:var(--sf-cat);border-radius:999px;width:8px;height:8px;display:inline-block}.sf-cat-tile{border:1px solid var(--sf-border);background:var(--sf-surface);width:100%;color:var(--sf-text);cursor:pointer;text-align:left;transition:border-color var(--sf-duration-fast) linear, background var(--sf-duration-fast) linear, transform var(--sf-duration-fast) var(--sf-ease), box-shadow var(--sf-duration-fast) linear;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.sf-cat-tile:hover{border-color:var(--sf-cat);box-shadow:0 4px 12px -8px var(--sf-cat);transform:translateY(-1px)}.sf-cat-tile:focus-visible{outline:2px solid var(--sf-cat);outline-offset:2px}.sf-cat-tile.is-active{background:color-mix(in srgb, var(--sf-cat) 12%, var(--sf-surface));border-color:var(--sf-cat);color:var(--sf-cat);box-shadow:0 6px 14px -10px var(--sf-cat);font-weight:600}.sf-cat-tile-icon{background:var(--sf-cat);color:#fff;border-radius:8px;flex:0 0 26px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.sf-cat-tile-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sf-board-card{position:relative;overflow:hidden}.sf-board-card:before{content:"";background:var(--sf-cat,var(--sf-ink));opacity:.85;width:4px;height:84%;transition:opacity var(--sf-duration) var(--sf-ease), width var(--sf-duration) var(--sf-ease);border-radius:0 4px 4px 0;position:absolute;top:8%;left:0}.sf-board-card:hover:before{opacity:1;width:6px}.sf-filter-bar{flex-wrap:wrap;align-items:center;gap:8px;min-height:24px;margin-top:12px;display:flex}.sf-filter-chip{background:var(--sf-surface);border:1px solid var(--sf-border);color:var(--sf-text);transition:border-color var(--sf-duration-fast) linear;border-radius:999px;align-items:center;gap:6px;padding:2px 8px 2px 10px;font-size:12px;display:inline-flex}.sf-filter-chip:hover{border-color:var(--sf-ink)}.sf-illo{color:var(--sf-text-muted);flex-direction:column;align-items:center;gap:12px;padding:24px 0 32px;display:flex}.sf-illo-title{color:var(--sf-text);font-size:15px;font-weight:600}.sf-illo-desc{text-align:center;max-width:320px;font-size:13px;line-height:1.7}.sf-skeleton-row{background:color-mix(in srgb, var(--sf-ink) 6%, var(--sf-surface));border-radius:10px;position:relative;overflow:hidden}.sf-skeleton-row:after{content:"";background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--sf-ink) 12%, transparent) 40%, transparent 80%);animation:sfShimmer 1.4s var(--sf-ease) infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes sfShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes sfPageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sf-page{animation:sfPageIn .32s var(--sf-ease) both}@media (width<=900px){.sf-header-tag{display:none!important}}.sf-cat-tile:focus-visible,.sf-filter-chip:focus-visible,.sf-cat-chip:focus-visible{outline:2px solid var(--sf-ink);outline-offset:2px;border-radius:8px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.sf-card:hover{box-shadow:var(--sf-shadow);transform:none}}@media print{.ant-layout-sider,.ant-layout-header,.sf-no-print{display:none!important}body,html{color:#000!important;background:#fff!important}.ant-card{box-shadow:none!important;border:1px solid #ddd!important}.ant-table-wrapper .ant-table{border:1px solid #ddd}}.sf-ai-panel{border:1px solid var(--sf-border,#e6e8eb);background:color-mix(in srgb, var(--sf-ink,#0f5c58) 5%, transparent);border-radius:12px;margin-top:4px;padding:12px 14px}.sf-ai-row{flex-wrap:wrap;align-items:center;gap:6px;padding:4px 0;font-size:13px;display:flex}.sf-ai-row .ant-tag{margin-inline-end:0}.sf-urgency-overdue,.sf-urgency-due{border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:11px;font-weight:600;line-height:18px;display:inline-flex}.sf-urgency-overdue{color:#cf1322;background:#cf13221f;border:1px solid #cf13224d}.sf-urgency-due{color:#d46b08;background:#fa8c1624;border:1px solid #fa8c1652}html[data-sf-theme=dark] .sf-urgency-overdue{color:#ff7875}html[data-sf-theme=dark] .sf-urgency-due{color:#ffa940}.sf-watch-btn.is-on{color:var(--sf-gold,#c08a2e)!important}.sf-cite-graph{width:100%;padding:8px 0;overflow-x:auto}.sf-cite-node{cursor:pointer;transition:filter .2s var(--sf-ease,ease)}.sf-cite-node:hover{filter:brightness(1.08)}.sf-cite-node-rect{fill:var(--sf-surface,#fff);stroke:var(--sf-ink,#0f5c58);stroke-width:1.5px}.sf-cite-node-rect.is-branch{stroke:var(--sf-gold,#c08a2e);stroke-dasharray:4 3}.sf-cite-node-text{fill:var(--sf-text,#1f1f1f);dominant-baseline:middle;font-size:12px}.sf-cite-node-sub{fill:var(--sf-text-muted,#8c8c8c);dominant-baseline:middle;font-size:10px}.sf-cite-link{fill:none;stroke:color-mix(in srgb, var(--sf-ink,#0f5c58) 45%, transparent);stroke-width:1.5px}.sf-cite-link.is-branch{stroke:color-mix(in srgb, var(--sf-gold,#c08a2e) 60%, transparent);stroke-dasharray:5 4}.sf-cmdk-hint{align-items:center;gap:4px;display:inline-flex}.sf-cmdk kbd,kbd.sf-kbd{border:1px solid var(--sf-border,#d9d9d9);background:color-mix(in srgb, var(--sf-surface,#fff) 70%, transparent);color:var(--sf-text-muted,#666);box-shadow:0 1px 0 var(--sf-border,#d9d9d9);border-radius:6px;padding:1px 6px;font-family:inherit;font-size:11px}.sf-cmdk-trigger{align-items:center;gap:6px;display:inline-flex}.sf-cmdk-list .ant-list-item:hover{background:color-mix(in srgb, var(--sf-ink,#0f5c58) 8%, transparent)}.sf-draft-card{transition:transform .18s var(--sf-ease,ease), box-shadow .18s var(--sf-ease,ease)}.sf-draft-card:hover{box-shadow:var(--sf-shadow,0 6px 18px #00000014);transform:translateY(-2px)}
