:root {
  --bg: #f5f5f7;
  --surface: #ffffff;
  --surface-strong: #fafafa;
  --line: rgba(60, 60, 67, .13);
  --line-strong: rgba(60, 60, 67, .23);
  --ink: #1d1d1f;
  --muted: #626268;
  --soft: #8b8b91;
  --moss: #17664b;
  --moss-soft: #edf7f1;
  --amber: #9a5a05;
  --amber-soft: #fff6e7;
  --red: #b23a32;
  --red-soft: #fff0ef;
  --violet: #6d4aa0;
  --violet-soft: #f5f0fa;
  --blue: #176486;
  --blue-soft: #edf5f9;
  --shadow: 0 18px 48px rgba(20, 24, 21, .11);
  --radius: 8px;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  color: var(--ink);
  background: var(--bg);
  font-size: 14px;
  letter-spacing: 0;
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: var(--bg); -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .55; }
button, a, input, select, textarea { transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(23,102,75,.18); outline-offset: 2px; }
.boot { min-height: 100vh; display: grid; place-content: center; gap: 14px; color: var(--muted); text-align: center; }
.boot-mark { width: 32px; height: 32px; margin: auto; border: 3px solid var(--line); border-top-color: var(--moss); border-radius: 50%; animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.app-layout { min-height: 100vh; display: grid; grid-template-columns: 226px minmax(0, 1fr); }
.sidebar { background: rgba(244,246,243,.94); color: var(--ink); padding: 20px 12px 16px; border-right:1px solid rgba(24,35,29,.08); backdrop-filter:blur(24px) saturate(140%); display: flex; flex-direction: column; gap: 18px; position: sticky; top: 0; height: 100vh; }
.brand { display: flex; align-items: center; gap: 10px; padding: 0 8px; color: var(--ink); font-weight: 750; }
.brand-mark { width: 29px; height: 29px; display: grid; place-items: center; background: var(--moss); color: #fff; border-radius: 7px; box-shadow:0 4px 12px rgba(23,102,75,.2); font-weight: 850; }
.brand small { display: block; color: var(--soft); font-size: 10px; font-weight: 600; margin-top: 2px; }
.nav { display: grid; gap: 3px; }
.nav-label { padding: 6px 9px; color: var(--soft); font-size: 10px; font-weight:650; }
.nav-item { width: 100%; display: flex; align-items: center; gap: 10px; border: 1px solid transparent; background: transparent; color: #4d5350; padding: 9px 10px; border-radius: 7px; text-align: left; }
.nav-item i { width: 18px; height: 18px; }
.nav-item:hover { background: rgba(255,255,255,.72); border-color:rgba(24,35,29,.06); color: var(--ink); }
.nav-item.active { background: #fff; border-color:rgba(24,35,29,.08); color: var(--moss); box-shadow:0 3px 12px rgba(29,41,34,.07); font-weight: 700; }
.sidebar-bottom { margin-top: auto; display: grid; gap: 9px; }
.user-block { width:100%;border:0;border-top: 1px solid var(--line); padding: 14px 8px 0; display: flex; gap: 9px; align-items: center;background:transparent;color:var(--ink);text-align:left; }
.user-block>div { min-width:0;flex:1; }.user-block>svg { width:14px;height:14px;color:var(--soft); }.user-block:hover { color:var(--moss); }
.avatar { width: 28px; height: 28px; border-radius: 50%; background: #c6e2d1; color: #1d4534; display: grid; place-items: center; font-weight: 750; flex: none; }
.avatar-photo { background-color:#dce7df;background-position:center;background-size:cover;background-repeat:no-repeat;color:transparent; }
.user-block strong, .user-block small { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.user-block small { color: var(--soft); margin-top: 2px; font-size: 10px; }
.sidebar-logout { background: none; border: 0; color: var(--muted); text-align: left; padding: 7px 9px; display: flex; gap: 9px; align-items: center; }
.sidebar-logout:hover { color: var(--red); }
.main { min-width: 0; display: flex; flex-direction: column; }
.topbar { min-height: 62px; padding: 11px 22px; border-bottom: 1px solid rgba(24,35,29,.08); background: rgba(250,250,251,.82); backdrop-filter: blur(22px) saturate(150%); display: flex; align-items: center; gap: 12px; position: sticky; top: 0; z-index: 10; }
.topbar h1 { font-size: 17px; margin: 0; min-width: 112px; }
.crumb { color: var(--muted); font-size: 12px; }
.top-actions { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.top-mine-entry { height:32px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;border:1px solid var(--line);border-radius:6px;background:#f7f9f5;color:var(--moss);font-size:11px;font-weight:700;cursor:pointer;white-space:nowrap; }.top-mine-entry:hover,.top-mine-entry:focus-visible { border-color:#9fbdaa;background:var(--moss-soft);outline:none; }.top-mine-entry svg { width:15px;height:15px; }
.team-report-board { overflow:hidden; }.team-report-groups { display:flex;align-items:center;gap:6px;padding:10px 12px;border:1px solid var(--line);border-bottom:0;border-radius:7px 7px 0 0;background:#f7f9f5;overflow-x:auto; }.team-report-groups button { height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);font-size:10px;white-space:nowrap;cursor:pointer; }.team-report-groups button strong { min-width:18px;height:18px;display:grid;place-items:center;border-radius:9px;background:#e5ebe5;color:var(--ink);font-size:8px; }.team-report-groups button.active { border-color:#a9c8b4;background:#fff;color:var(--moss);font-weight:700; }.team-report-members { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px;border:1px solid var(--line);border-radius:0 0 7px 7px;background:#fff; }.team-report-member { min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) auto 16px;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:6px;background:#fafbf8;text-align:left;cursor:pointer; }.team-report-member:hover { border-color:#9ebda9;background:#f3f8f4; }.team-report-avatar { width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--moss-soft);color:var(--moss);font-size:9px;font-weight:700;background-size:cover;background-position:center; }.team-report-member>span { min-width:0; }.team-report-member>span strong,.team-report-member>span small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.team-report-member>span strong { font-size:11px; }.team-report-member>span small { margin-top:2px;color:var(--muted);font-size:8px; }.team-report-member em { display:flex;gap:4px;font-style:normal; }.team-report-member em b { padding:3px 5px;border-radius:4px;background:#edf1ec;color:var(--muted);font-size:8px;white-space:nowrap; }.team-report-member>svg { color:var(--soft); }
.team-report-overlay { position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:14px;background:rgba(13,27,18,.62); }.team-report-screen { width:min(980px,100%);height:min(820px,calc(100vh - 28px));display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border-radius:9px;background:#f5f7f2;box-shadow:0 28px 80px rgba(9,24,15,.3); }.team-report-screen>header { display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fff; }.team-report-screen-avatar { width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--moss-soft);color:var(--moss);font-size:10px;font-weight:800;background-size:cover;background-position:center; }.team-report-screen>header>div { min-width:0;flex:1; }.team-report-screen>header span { color:var(--moss);font-size:9px;font-weight:700; }.team-report-screen>header h2 { margin:2px 0;font-size:18px; }.team-report-screen>header p { margin:0;color:var(--muted);font-size:9px; }.team-report-screen>nav { display:flex;gap:6px;padding:9px 14px;border-bottom:1px solid var(--line);background:#fff; }.team-report-screen>nav button { height:30px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid var(--line);border-radius:5px;background:#f7f9f5;color:var(--muted);font-size:10px;cursor:pointer; }.team-report-screen>nav button strong { color:var(--ink); }.team-report-screen>nav button.active { border-color:#93b9a0;background:var(--moss-soft);color:var(--moss);font-weight:700; }.team-report-screen>main { min-height:0;padding:12px;overflow:auto; }.team-report-list { display:grid;gap:8px; }.team-report-history-card { display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:7px;background:#fff;text-align:left;cursor:pointer; }.team-report-history-card:hover { border-color:#9dbba8; }.team-report-history-card>span { width:34px;height:34px;display:grid;place-items:center;border-radius:6px;background:var(--moss-soft);color:var(--moss); }.team-report-history-card>div { min-width:0; }.team-report-history-card strong,.team-report-history-card small,.team-report-history-card time { display:block; }.team-report-history-card strong { font-size:11px; }.team-report-history-card small { margin-top:3px;color:var(--muted);font-size:9px; }.team-report-history-card time { margin-top:4px;color:var(--soft);font-size:8px; } #report-detail-overlay { z-index:86; }
.notification-bell { width:34px;height:34px;position:relative;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink); }.notification-bell:hover { border-color:#9fb49f;background:#f8fbf6; }.notification-bell svg { width:16px;height:16px; }.notification-bell span { min-width:17px;height:17px;position:absolute;top:-5px;right:-5px;padding:0 4px;display:grid;place-items:center;border:2px solid #fff;border-radius:10px;background:var(--red);color:#fff;font-size:8px;font-weight:800; }
.icon-btn, .tool-btn { border: 1px solid var(--line); background: var(--surface); color: var(--ink); height: 32px; border-radius: 5px; display: inline-grid; place-items: center; }
.icon-btn { width: 32px; }
.icon-btn:hover, .tool-btn:hover { border-color: #a3b59d; background: #fbfdf9; }
.tool-btn { padding: 0 10px; gap: 6px; grid-auto-flow: column; font-size: 12px; }
.tool-btn i, .icon-btn i { width: 16px; height: 16px; }
.primary { background: var(--moss); border-color: var(--moss); color: #fff; }
.primary:hover { background: #0d563d; border-color: #0d563d; }
.page { padding: 22px; max-width: 1720px; width: 100%; margin: 0 auto; }
.page-head { display: flex; align-items: flex-end; gap: 12px; margin-bottom: 18px; }
.page-head h2 { font-size: 21px; margin: 0; font-weight: 750; }
.page-head p { margin: 0; color: var(--muted); font-size: 12px; }
.page-head .head-actions { margin-left: auto; display: flex; gap: 8px; }
.page-head.actions-only { min-height:32px;justify-content:flex-end;align-items:center;margin-bottom:10px; }.page-head.actions-only .head-actions { margin-left:0; }
.metric-grid { display: grid; grid-template-columns: repeat(6, minmax(118px, 1fr)); gap: 10px; margin-bottom: 20px; }
.metric { min-height: 91px; padding: 14px; border: 1px solid var(--line); background: var(--surface); border-radius: var(--radius); }
.metric .metric-label { font-size: 12px; color: var(--muted); display: flex; justify-content: space-between; align-items: center; }
.metric strong { display: block; margin-top: 9px; font-size: 25px; line-height: 1; font-weight: 750; }
.metric.warning strong { color: var(--amber); }.metric.danger strong { color: var(--red); }.metric.good strong { color: var(--moss); }
.meeting-scope-grid { display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin:-5px 0 15px; }.meeting-scope-card { min-height:68px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:1px 9px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);text-align:left; }.meeting-scope-card>i { grid-row:1/3;width:27px;height:27px;padding:5px;border-radius:6px;background:#edf2eb;color:var(--moss); }.meeting-scope-card span { font-size:13px;font-weight:700; }.meeting-scope-card strong { grid-row:1/3;grid-column:3;font-size:22px; }.meeting-scope-card small { color:var(--muted);font-size:10px; }.meeting-scope-card:hover { border-color:#9fb49f; }.meeting-scope-card.active { border-color:var(--moss);box-shadow:0 0 0 2px rgba(23,102,75,.10);background:#f7fbf5; }
.task-scope-grid { display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:9px;margin:-5px 0 12px; }
.task-scope-card { min-height:56px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);text-align:left; }
.task-scope-card>i { width:24px;height:24px;padding:4px;border-radius:5px;background:#edf2eb;color:var(--moss); }
.task-scope-card span { font-size:12px;font-weight:700; }.task-scope-card strong { font-size:18px; }.task-scope-card:hover { border-color:#9fb49f; }.task-scope-card.active { border-color:var(--moss);box-shadow:0 0 0 2px rgba(23,102,75,.10);background:#f7fbf5; }
.task-filter-row { display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(120px,.7fr) minmax(140px,.8fr) minmax(110px,.6fr) auto;gap:8px;align-items:center;padding:10px;border-bottom:1px solid var(--line);background:#fbfcf9; }
.task-filter-row .search,.task-filter-row .filter-select { width:100%;max-width:none;min-width:0; }.task-filter-row .search input,.task-filter-row .filter-select { height:36px; }.task-filter-row .search i,.task-filter-row .search>svg { top:10px; }.task-filter-result { display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap; }.task-filter-count { color:var(--muted);font-size:11px;text-align:right; }.task-filter-result button { height:28px;display:inline-flex;align-items:center;gap:4px;padding:0 7px;border:1px solid #dba9a4;border-radius:4px;background:#fff7f6;color:var(--red);font-size:10px;font-weight:700; }.task-filter-result button:hover { border-color:var(--red);background:var(--red-soft); }.task-filter-result button svg { width:12px;height:12px; }.task-filter-result button[hidden] { display:none; }
.task-group-row td { height:34px!important;background:#f0f3ee!important;color:#405047;border-bottom-color:#d8dfd4!important; }.task-group-row td strong { font-size:11px; }.task-group-row td span { margin-left:7px;color:var(--muted);font-size:10px; }.task-group-row.completed td { background:#e9f2ea!important;color:var(--moss); }
.sales-page { max-width:none;padding:0;overflow:hidden; }.sales-frame-shell { height:calc(100vh - 62px);background:#fff; }.sales-frame { width:100%;height:100%;border:0;display:block;background:#fff; }
.navigation-toolbar { min-height:54px;display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:14px;border:1px solid rgba(24,35,29,.08);border-radius:8px;background:rgba(255,255,255,.82);box-shadow:0 4px 18px rgba(22,27,24,.04);backdrop-filter:blur(18px); }.navigation-toolbar .search { width:min(420px,100%); }.navigation-toolbar .search input { height:34px;border-radius:7px;background:#f8f8fa; }.navigation-toolbar .search i,.navigation-toolbar .search>svg { top:9px; }.navigation-toolbar>span { color:var(--muted);font-size:11px;white-space:nowrap; }
.navigation-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;align-items:stretch; }.navigation-grid>.empty { grid-column:1/-1; }.navigation-card { --navigation-accent:var(--blue);--navigation-soft:var(--blue-soft);min-width:0;min-height:166px;display:grid;grid-template-rows:minmax(0,1fr) 35px;overflow:hidden;border:1px solid rgba(24,35,29,.09);border-radius:8px;background:#fff;box-shadow:0 5px 22px rgba(22,27,24,.055); }.navigation-card.tone-green { --navigation-accent:var(--moss);--navigation-soft:var(--moss-soft); }.navigation-card.tone-amber { --navigation-accent:var(--amber);--navigation-soft:var(--amber-soft); }.navigation-card.tone-violet { --navigation-accent:var(--violet);--navigation-soft:var(--violet-soft); }.navigation-card:hover { border-color:color-mix(in srgb,var(--navigation-accent) 38%,var(--line));box-shadow:0 11px 30px rgba(22,27,24,.09);transform:translateY(-2px); }.navigation-card-link { min-width:0;position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;grid-template-rows:20px minmax(42px,auto) 22px;column-gap:11px;padding:16px 15px 12px;color:var(--ink);text-decoration:none; }.navigation-card-icon { width:42px;height:42px;grid-row:1/3;display:grid;place-items:center;border-radius:8px;background:var(--navigation-soft);color:var(--navigation-accent); }.navigation-card-icon svg { width:20px;height:20px; }.navigation-card-link>small { align-self:center;color:var(--navigation-accent);font-size:9px;font-weight:750; }.navigation-card-link h3 { min-width:0;align-self:center;margin:2px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:13px;line-height:1.45;font-weight:700; }.navigation-open { grid-column:2/4;align-self:end;display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:10px; }.navigation-open svg { width:12px;height:12px; }.navigation-card-link:hover .navigation-open { color:var(--navigation-accent); }.navigation-card footer { min-width:0;display:flex;align-items:center;gap:7px;padding:0 10px 0 15px;border-top:1px solid #eeeef0;background:#fbfbfc; }.navigation-card footer>span { min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--soft);font-size:9px; }.navigation-card footer button { width:26px;height:26px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:var(--muted); }.navigation-card footer button:hover { background:#eeeeef;color:var(--ink); }.navigation-card footer button svg { width:13px;height:13px; }
.section { margin-top: 20px; }
.section-head { display: flex; align-items: center; gap: 8px; margin-bottom: 9px; }
.section-head h3 { font-size: 14px; margin: 0; }
.section-head span { color: var(--muted); font-size: 12px; }
.section-head .more { margin-left: auto; border: 0; background: none; color: var(--moss); font-size: 12px; }
.overview-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 16px; }
.panel { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); box-shadow:0 3px 16px rgba(22,27,24,.035); }
.panel-head { padding: 13px 14px; border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 8px; }
.panel-head h3 { font-size: 13px; margin: 0; }.panel-head span { font-size: 12px; color: var(--muted); }.panel-body { padding: 5px 14px 10px; }
.signal-row { display: grid; grid-template-columns: 11px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 10px 0; border-bottom: 1px solid #edf0eb; cursor: pointer; }.signal-row:last-child { border: 0; }
.signal-row:hover .signal-title { color: var(--moss); }.signal-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--line-strong); }.signal-dot.blocked { background: var(--red); }.signal-dot.overdue { background: var(--amber); }.signal-dot.done { background: var(--moss); }
.signal-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }.signal-meta { color: var(--muted); font-size: 11px; margin-top: 2px; }.signal-date { color: var(--muted); font-size: 12px; white-space: nowrap; }
.table-shell { border: 1px solid var(--line); background: var(--surface); border-radius: var(--radius); overflow: hidden; }
.toolbar { display: flex; gap: 8px; padding: 10px; align-items: center; border-bottom: 1px solid var(--line); background: #fbfcf9; }
.search { position: relative; min-width: 215px; }.search i,.search>svg { position: absolute; left: 9px; top: 8px; color: var(--soft); width: 15px; height: 15px;pointer-events:none; }.search input { width: 100%; height: 31px; padding: 0 9px 0 30px; border: 1px solid var(--line); border-radius: 4px; background: #fff; outline: none; }.search input:focus, .filter-select:focus { border-color: var(--moss); box-shadow: 0 0 0 2px rgba(23,102,75,.12); }
.filter-select { height: 31px; max-width: 150px; border: 1px solid var(--line); border-radius: 4px; padding: 0 25px 0 8px; background: #fff; color: var(--ink); outline: none; font-size: 12px; }.toolbar-spacer { flex: 1; }
.table-wrap { overflow: auto; max-height: calc(100vh - 225px); }.data-table { width: 100%; min-width: 980px; border-collapse: separate; border-spacing: 0; font-size: 12px; }.data-table th { position: sticky; top: 0; z-index: 2; height: 36px; padding: 0 10px; border-bottom: 1px solid var(--line); background: #f6f8f4; color: #637067; font-weight: 650; text-align: left; white-space: nowrap; }.data-table td { height: 43px; padding: 6px 10px; border-bottom: 1px solid #e9eee7; vertical-align: middle; }.data-table tr:last-child td { border-bottom: 0; }.data-table tbody tr:hover td { background: #fbfdf8; }.data-table tr.is-selected td { background: #edf6e9; }.cell-title { font-weight: 650; max-width: 350px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }.cell-title:hover { color: var(--moss); text-decoration: underline; }.cell-muted { color: var(--muted); }.cell-small { font-size: 11px; color: var(--muted); white-space: nowrap; }
.inline-select { height: 27px; padding: 0 22px 0 6px; border: 1px solid transparent; border-radius: 4px; background: transparent; color: inherit; font-size: 12px; max-width: 105px; }.inline-select:hover, .inline-select:focus { border-color: var(--line-strong); background: white; outline: 0; }
.task-data-table .status-select { min-width:76px;border-width:1px;border-style:solid;font-weight:700; }
.task-data-table .status-select.status-planned,.task-data-table .status-select.status-backlog { border-color:#cbd3cd;background:#edf0eb;color:#4f5d54; }
.task-data-table .status-select.status-in_progress { border-color:#9bc9dc;background:var(--blue-soft);color:#115c7b; }
.task-data-table .status-select.status-review { border-color:#c8b3e1;background:var(--violet-soft);color:#644393; }
.task-data-table .status-select.status-blocked { border-color:#e5a9a3;background:var(--red-soft);color:#9d2e28; }
.task-data-table .status-select.status-paused { border-color:#e1bf86;background:var(--amber-soft);color:#7c4c08; }
.task-data-table .status-select.status-done { border-color:#a8d0b5;background:var(--moss-soft);color:#0e663e; }
.task-data-table .status-select:hover,.task-data-table .status-select:focus { border-color:currentColor;background-color:#fff;box-shadow:0 0 0 2px rgba(29,41,34,.08); }
.badge { display: inline-flex; align-items: center; min-height: 22px; padding: 2px 7px; border-radius: 999px; font-size: 11px; white-space: nowrap; }.status-done,.health-done { color: #0e663e; background: var(--moss-soft); }.status-in_progress,.status-active { color: #176486; background: var(--blue-soft); }.status-review { color: #6d4aa0; background: var(--violet-soft); }.status-planned,.status-backlog,.status-not_started { color: #627066; background: #edf0eb; }.status-blocked,.health-blocked { color: #a0332d; background: var(--red-soft); }.status-paused,.health-paused { color: #76590e; background: var(--amber-soft); }.priority-P0 { color: #982c26; background: #fee6e2; }.priority-P1 { color: #9a5a05; background: #fff0d8; }.priority-P2 { color: #176486; background: #e4f1f6; }.priority-P3 { color: #657269; background: #edf0eb; }
.progress { height: 5px; width: 70px; border-radius: 99px; background: #e8ece7; overflow: hidden; }.progress > span { display: block; height: 100%; border-radius: inherit; background: var(--moss); }.progress-text { font-size: 11px; color: var(--muted); margin-left: 5px; }
.empty { min-height: 150px; display: grid; place-items: center; color: var(--muted); text-align: center; padding: 30px; }.empty i { width: 26px; height: 26px; color: #9aac9e; margin-bottom: 8px; }.empty p { margin: 0; }
.board { display: grid; grid-template-columns: repeat(5, minmax(215px,1fr)); gap: 12px; overflow: auto; padding-bottom: 8px; }.board-col { min-width: 215px; background: #eef2ed; border: 1px solid var(--line); border-radius: var(--radius); }.board-col-head { padding: 11px; display: flex; justify-content: space-between; font-weight: 700; font-size: 12px; }.board-col-body { padding: 0 8px 8px; display: grid; gap: 7px; }.task-card { padding: 10px; background: white; border: 1px solid #dfe6dc; border-radius: 5px; box-shadow: 0 1px 1px rgba(25,40,29,.03); cursor: pointer; }.task-card:hover { border-color: #a8bcaa; }.task-card h4 { margin: 7px 0 9px; font-size: 12px; line-height: 1.45; }.task-card-foot { display: flex; gap: 6px; justify-content: space-between; align-items: center; font-size: 11px; color: var(--muted); }
.team-sections { display:grid;gap:18px; }.team-section { --team-color:#76857a;--team-soft:#f1f4f0;padding:14px;border:1px solid var(--line);border-top:3px solid var(--team-color);border-radius:8px;background:linear-gradient(180deg,var(--team-soft),#fff 74px); }.team-leadership { --team-color:#17664b;--team-soft:#edf6ef; }.team-product { --team-color:#2880a4;--team-soft:#eef7fa; }.team-design { --team-color:#7d59aa;--team-soft:#f6f1fb; }.team-marketing { --team-color:#c07818;--team-soft:#fff7e9; }.team-section-head { display:flex;align-items:center;gap:8px;margin-bottom:11px; }.team-section-head>span { width:8px;height:8px;border-radius:50%;background:var(--team-color); }.team-section-head h3 { margin:0;font-size:14px; }.team-section-head small { color:var(--muted);font-size:10px; }.workload-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }.team-leadership .workload-card { max-width:420px; }.workload-card { padding: 13px; border: 1px solid var(--line); background: rgba(255,255,255,.92); border-radius: var(--radius);box-shadow:0 2px 8px rgba(26,43,31,.03); }.workload-head { display: flex; gap: 9px; align-items: center; }.workload-card h3 { margin: 0; font-size: 14px; }.workload-team { font-size: 11px; color: var(--muted); margin-top: 2px; }.workload-stats { display: grid; grid-template-columns: repeat(4,1fr); gap:5px;margin-top: 13px; }.workload-stats button { min-width:0;padding:7px 4px;border:1px solid transparent;border-radius:5px;background:#f7f9f6;color:var(--ink);text-align:center; }.workload-stats button:hover { border-color:var(--team-color);background:#fff;transform:translateY(-1px); }.workload-stats span { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size: 10px; color: var(--muted); }.workload-stats strong { display: block; color: var(--ink); font-size: 17px; margin-top: 3px; }.workload-stats button:nth-child(2) strong { color:var(--red); }.workload-stats button:nth-child(3) strong { color:var(--amber); }.workload-stats button:nth-child(4) strong { color:var(--moss); }
.decision-list { display: grid; }.decision-row { display: grid; grid-template-columns: minmax(0,1fr) 110px 115px 115px; gap: 12px; align-items: center; padding: 11px 0; border-bottom: 1px solid #ebefea; }.decision-row:last-child { border-bottom: 0; }.decision-row h4 { font-size: 13px; margin: 0; }.decision-row p { color: var(--muted); margin: 3px 0 0; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.drawer-backdrop, .modal-backdrop { position: fixed; inset: 0; z-index: 40; background: rgba(17,30,23,.33); display: flex; justify-content: flex-end; }.drawer { width: min(720px, 100vw); height: 100%; overflow: auto; background: #fff; box-shadow: -18px 0 40px rgba(19,37,26,.16); }.drawer-head { position: sticky; top: 0; z-index: 1; background: white; padding: 16px 18px; border-bottom: 1px solid var(--line); display: flex; align-items: flex-start; gap: 12px; }.drawer-head h2 { margin: 0; font-size: 17px; line-height: 1.4; }.drawer-head p { margin: 3px 0 0; color: var(--muted); font-size: 11px; }.drawer-head .icon-btn { margin-left: auto; flex: none; }.drawer-body { padding: 18px; }.drawer-actions { position: sticky; bottom: 0; background: white; padding: 12px 18px; border-top: 1px solid var(--line); display: flex; gap: 8px; justify-content: flex-end; }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }.field { min-width: 0; }.field.full { grid-column: 1 / -1; }.field label { display: block; margin-bottom: 5px; color: #58655c; font-size: 12px; }.field input,.field select,.field textarea { width: 100%; border: 1px solid var(--line-strong); border-radius: 4px; min-height: 33px; padding: 7px 8px; background: #fff; outline: 0; }.field textarea { min-height: 90px; resize: vertical; line-height: 1.5; }.field input:focus,.field select:focus,.field textarea:focus { border-color: var(--moss); box-shadow: 0 0 0 2px rgba(23,102,75,.12); }.form-section { padding-top: 18px; margin-top: 18px; border-top: 1px solid var(--line); }.form-section h3 { margin: 0 0 12px; font-size: 13px; }.readonly { color: var(--muted); background: #f7f8f5 !important; }
.checkbox-field { display: flex; align-items: flex-end; }.checkbox-field label { display: flex; align-items: center; gap: 7px; min-height: 33px; margin: 0; }.checkbox-field input { width: 16px; min-height: 16px; box-shadow: none; }
.modal-backdrop { justify-content: center; align-items: center; padding: 18px; }.modal { width: min(470px,100%); max-height: calc(100vh - 36px); overflow: auto; background: white; border-radius: 8px; box-shadow: var(--shadow); }.modal-head { padding: 16px 18px; border-bottom: 1px solid var(--line); display: flex; align-items: center; }.modal-head h2 { margin: 0; font-size: 16px; }.modal-head .icon-btn { margin-left: auto; }.modal-body { padding: 18px; }.modal-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 18px; border-top: 1px solid var(--line); }
.tool-btn.danger { border-color:#e2b6b2;background:#fff7f6;color:var(--red); }.tool-btn.danger:hover { border-color:var(--red);background:var(--red-soft); }.delete-action { margin-right:auto; }.task-description-cell { max-width:230px;line-height:1.45;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }.task-blocker-cell { max-width:230px;margin-top:4px;color:var(--red);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }.mobile-task-description { display:none; }
.mine-metric-grid { grid-template-columns:repeat(4,minmax(118px,1fr)); }
.modal.modal-wide { width:min(980px,calc(100vw - 36px)); }.project-create-modal { width:min(1180px,calc(100vw - 36px))!important; }.project-create-layout { display:grid;grid-template-columns:minmax(300px,.82fr) minmax(420px,1.18fr);gap:22px; }.batch-task-section { padding-left:22px;border-left:1px solid var(--line); }.batch-section-head { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px; }.batch-section-head h3 { margin:0;font-size:14px; }.batch-section-head p { margin:4px 0 0;color:var(--muted);font-size:11px; }.batch-task { padding:13px;margin-bottom:10px;border:1px solid var(--line);border-radius:7px;background:#fafcf8; }.batch-task-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:10px; }.batch-task-head strong { font-size:12px; }.batch-task-head .icon-btn { width:28px;height:28px;color:var(--red); }.batch-task textarea { min-height:58px; }
.people-picker { display:grid;gap:8px; }.people-group { display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;align-items:start; }.people-group-title { padding-top:9px;color:var(--muted);font-size:11px; }.people-cards { display:flex;flex-wrap:wrap;gap:6px; }.person-card { min-width:94px;height:42px;display:flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink); }.person-card .avatar { width:25px;height:25px;font-size:10px; }.person-card small { margin-left:auto;color:var(--muted);font-size:9px; }.person-card:hover { border-color:#9fb69f;background:#fbfdf9; }.person-card.active { border-color:var(--moss);background:var(--moss-soft);box-shadow:0 0 0 1px var(--moss); }.person-card.unassigned { width:max-content;min-width:112px;height:34px;color:var(--muted); }.person-card.unassigned i { width:15px;height:15px; }
.smart-progress-box { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px;margin-bottom:16px;border:1px solid #bdd8c5;border-radius:7px;background:#f2f9f3; }.smart-progress-box>div { grid-column:1/-1; }.smart-progress-box h3 { display:flex;align-items:center;gap:6px;margin:0;font-size:14px;color:var(--moss); }.smart-progress-box h3 i { width:16px;height:16px; }.smart-progress-box p { margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.5; }.smart-progress-box textarea { min-height:58px;padding:8px;border:1px solid var(--line-strong);border-radius:5px;resize:vertical; }.smart-progress-box .tool-btn { align-self:end;height:36px; }.manual-progress-field { display:none; }.project-add-task { float:right;margin-top:-29px; }
.project-workbench-head { margin-bottom:11px; }.project-filter-bar { display:flex;align-items:center;gap:9px;margin-bottom:12px;overflow-x:auto;scrollbar-width:thin; }.project-filter-bar>.project-tabs { flex:none;margin:0;overflow:visible; }.project-filter-bar>i { width:1px;height:25px;flex:none;background:var(--line); }.project-class-tabs { display:flex;gap:5px;flex:none; }.project-class-tabs button { min-height:32px;display:flex;align-items:center;gap:5px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);white-space:nowrap;font-size:11px; }.project-class-tabs button span { padding:1px 5px;border-radius:9px;background:#eef1ec;font-size:9px; }.project-class-tabs button.active { border-color:var(--moss);background:var(--moss-soft);color:var(--moss);font-weight:700; }.project-class-tabs button.active span { background:#fff; }.project-workbench { min-height:calc(100vh - 190px);display:grid;grid-template-columns:300px minmax(0,1fr);border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden; }.project-browser { min-width:0;border-right:1px solid var(--line);background:#f7f9f5;display:flex;flex-direction:column; }.project-browser-tools { padding:12px;border-bottom:1px solid var(--line);display:grid;gap:8px; }.project-browser-tools .search { width:100%; }.project-browser-tools .filter-select { width:100%;max-width:none; }.project-browser-count { min-height:29px;padding:8px 13px 3px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px; }.project-browser-count small { display:flex;align-items:center;gap:3px;font-size:9px; }.project-browser-count svg { width:12px;height:12px; }.project-pick-list { min-height:0;overflow:auto;padding:7px;display:grid;align-content:start;gap:6px;max-height:calc(100vh - 275px); }.project-pick-card { --state-color:#8a978d;width:100%;display:grid;gap:6px;padding:10px;border:1px solid transparent;border-left:3px solid var(--state-color);border-radius:7px;background:transparent;color:var(--ink);text-align:left;transition:border-color .15s,background .15s,transform .15s; }.project-pick-card:hover { background:#fff;border-color:var(--line);border-left-color:var(--state-color); }.project-pick-card.active { background:#fff;border-color:#84a88d;border-left-color:var(--state-color);box-shadow:0 2px 8px rgba(24,65,40,.08); }.project-pick-card.project-state-blocked { --state-color:var(--red); }.project-pick-card.project-state-active { --state-color:var(--blue); }.project-pick-card.project-state-completed { --state-color:var(--moss); }.project-pick-card.project-state-paused { --state-color:var(--amber); }.project-pick-card.dragging { opacity:.45;transform:scale(.98); }.project-pick-list.is-sorting .project-pick-card:not(.dragging) { transition:transform .12s; }.project-pick-card>strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px; }.project-pick-card>small { color:var(--muted);font-size:10px; }.project-pick-top,.project-pick-top>span { display:flex;align-items:center; }.project-pick-top { justify-content:space-between;color:var(--muted);font-size:10px; }.project-pick-top>span { gap:5px; }.project-state-dot { width:6px;height:6px;border-radius:50%;background:var(--state-color); }.project-drag-hint { cursor:grab; }.project-drag-hint svg { width:13px;height:13px; }.project-drag-hint:active { cursor:grabbing; }.mini-progress { height:3px;background:#e5ebe3;border-radius:99px;overflow:hidden; }.mini-progress i { display:block;height:100%;background:var(--state-color); }.project-task-stage { min-width:0;padding:20px;overflow:auto;max-height:calc(100vh - 190px); }.stage-empty,.stage-loading { min-height:420px;display:grid;place-content:center;text-align:center;color:var(--muted); }.stage-empty i { width:28px;height:28px;margin:auto; }.selected-project-head { display:flex;align-items:flex-start;gap:16px;margin-bottom:17px; }.selected-project-head h2 { margin:5px 0 3px;font-size:21px; }.selected-project-head p { margin:0;color:var(--muted);font-size:11px; }.selected-project-kicker { display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px; }.selected-project-actions { margin-left:auto;display:flex;gap:7px; }.project-task-metrics { display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:8px;margin-bottom:16px; }.project-task-metrics>div { padding:11px;border:1px solid var(--line);border-radius:6px;background:#fafbf8; }.project-task-metrics span { display:block;color:var(--muted);font-size:10px; }.project-task-metrics strong { display:block;margin-top:5px;font-size:19px; }.project-task-metrics strong small { font-size:10px;color:var(--muted); }.project-task-metrics .danger strong { color:var(--red); }.project-task-metrics .warning strong { color:var(--amber); }.project-task-table { border:1px solid var(--line);border-radius:7px;overflow:hidden; }.project-task-table-head { padding:11px 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fbfcf9; }.project-task-table-head h3 { margin:0;font-size:13px; }.project-task-table-head p { margin:2px 0 0;color:var(--muted);font-size:10px; }.project-task-table-head>span { color:var(--muted);font-size:11px; }.workbench-task-table { min-width:780px; }.workbench-task-table tr { cursor:pointer; }.workbench-task-table tr.is-overdue td { background:#fffaf8; }.data-table tr[data-task-status="blocked"] td:first-child,.workbench-task-table tr[data-task-status="blocked"] td:first-child { border-left:3px solid var(--red); }.data-table tr[data-task-status="in_progress"] td:first-child,.workbench-task-table tr[data-task-status="in_progress"] td:first-child { border-left:3px solid var(--blue); }.data-table tr[data-task-status="review"] td:first-child,.workbench-task-table tr[data-task-status="review"] td:first-child { border-left:3px solid var(--violet); }.data-table tr[data-task-status="done"] td:first-child,.workbench-task-table tr[data-task-status="done"] td:first-child { border-left:3px solid var(--moss); }.delay-badge { display:inline-flex;padding:3px 7px;border-radius:999px;font-size:10px;white-space:nowrap; }.delay-badge.overdue { color:#a62f29;background:var(--red-soft);font-weight:700; }.delay-badge.done { color:#176143;background:var(--moss-soft); }.delay-badge.normal { color:#176486;background:var(--blue-soft); }.delay-badge.unset { color:var(--muted);background:#edf0eb; }.task-progress-line { display:flex;align-items:center;gap:6px; }.task-progress-line>span { width:56px;height:4px;border-radius:99px;background:#e5eae3;overflow:hidden; }.task-progress-line i { display:block;height:100%;background:var(--moss); }.task-progress-line small { color:var(--muted);font-size:10px; }
.project-overall-progress { margin-bottom:12px;padding:14px 15px;border:1px solid #bfd4c2;border-left:4px solid var(--moss);border-radius:6px;background:#f5faf4; }.project-overall-progress-head { display:flex;align-items:center;justify-content:space-between;gap:12px; }.project-overall-progress-head>span { display:flex;align-items:center;gap:6px;color:var(--moss);font-size:12px;font-weight:700; }.project-overall-progress-head>span i { width:15px;height:15px; }.project-overall-progress-head .tool-btn { height:30px; }.project-overall-progress>p { margin:7px 0 0;color:var(--ink);font-size:14px;line-height:1.65;white-space:pre-wrap;word-break:break-word; }
.task-detail-head { padding:18px 22px; }.task-detail-head h2 { margin-top:7px;font-size:20px; }.task-detail-badges { display:flex;gap:5px;align-items:center; }.task-detail-body { padding:20px 22px 28px; }.task-summary-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:15px; }.task-summary-grid>div { padding:10px;border:1px solid var(--line);border-radius:6px;background:#fafbf8;min-width:0; }.task-summary-grid span,.task-summary-grid strong { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.task-summary-grid span { color:var(--muted);font-size:10px; }.task-summary-grid strong { margin-top:4px;font-size:12px; }.task-summary-grid .danger strong { color:var(--red); }.task-smart-box { margin:0 0 18px; }.task-detail-section { padding:18px 0;border-top:1px solid var(--line); }.task-detail-section-title { display:flex;align-items:baseline;gap:8px;margin-bottom:12px; }.task-detail-section-title h3 { margin:0;font-size:14px; }.task-detail-section-title span { color:var(--muted);font-size:10px; }.task-date-grid { margin-top:12px; }.people-picker-details { border:1px solid var(--line);border-radius:6px;background:#fafbf8; }.people-picker-details>summary { min-height:54px;display:flex;align-items:center;gap:9px;padding:8px 11px;cursor:pointer;list-style:none; }.people-picker-details>summary::-webkit-details-marker { display:none; }.people-picker-details>summary>span:nth-child(2) { display:grid;gap:2px; }.people-picker-details summary small { color:var(--muted);font-size:9px; }.people-picker-details summary strong { font-size:12px; }.people-picker-details summary>i { margin-left:auto;color:var(--muted); }.people-picker-details[open] summary>i { transform:rotate(180deg); }.people-picker-pop { padding:12px;border-top:1px solid var(--line);background:#fff; }.people-picker-pop .people-group { grid-template-columns:78px 1fr; }.task-person-readonly { min-height:54px;display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid var(--line);border-radius:6px;background:#fafbf8; }.task-person-readonly small,.task-person-readonly strong { display:block; }.task-person-readonly small { color:var(--muted);font-size:9px; }.task-advanced-edit,.source-details { margin-top:4px;border:1px solid var(--line);border-radius:6px;background:#fafbf8; }.task-advanced-edit>summary,.source-details>summary { display:flex;align-items:center;gap:7px;padding:10px 12px;cursor:pointer;color:var(--muted);font-size:11px; }.task-advanced-edit>.form-grid { padding:0 12px 12px; }.source-details pre { margin:0;padding:12px;border-top:1px solid var(--line);white-space:pre-wrap;word-break:break-all;color:var(--muted);font-size:10px;max-height:210px;overflow:auto; }.update-timeline { display:grid;gap:0; }.timeline-item { display:grid;grid-template-columns:10px minmax(0,1fr);gap:9px;padding-bottom:13px; }.timeline-item>span { width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--moss);position:relative; }.timeline-item>span:after { content:'';position:absolute;top:8px;bottom:-18px;left:3px;width:1px;background:var(--line); }.timeline-item:last-child>span:after { display:none; }.timeline-item strong { font-size:11px; }.timeline-item p { margin:3px 0;color:var(--ink);font-size:11px; }.timeline-item small { color:var(--muted);font-size:9px; }.detail-empty { padding:18px;text-align:center;color:var(--muted);font-size:11px; }
.login-page { min-height: 100vh; display: grid; grid-template-columns: minmax(0,1.1fr) minmax(340px,.9fr); background: #eff3ed; }.login-aside { padding: clamp(28px,8vw,120px); display: flex; flex-direction: column; justify-content: center; background: #1f332a; color: white; }.login-aside h1 { font-size: 38px; max-width: 480px; line-height: 1.25; margin: 24px 0 15px; }.login-aside p { color: #b5c9bc; max-width: 430px; line-height: 1.7; }.login-signals { display: grid; gap: 10px; margin-top: 32px; max-width: 430px; }.login-signal { color: #dcebdc; border-top: 1px solid #3d5648; padding-top: 10px; font-size: 13px; }.login-box { align-self: center; width: min(380px,calc(100% - 44px)); padding: 28px; background: #fff; border: 1px solid var(--line); border-radius: 8px; box-shadow: var(--shadow); }.login-box h2 { margin: 0; font-size: 22px; }.login-box p { color: var(--muted); margin: 7px 0 22px; font-size: 12px; }.login-box .field { margin-bottom: 13px; }.login-error { min-height: 18px; color: var(--red); font-size: 12px; margin: -3px 0 8px; }.login-box .primary { width: 100%; height: 38px; }.hint { margin-top: 18px; color: var(--soft); font-size: 11px; line-height: 1.55; }
.toast-root { position: fixed; right: 18px; bottom: 18px; z-index: 100; display: grid; gap: 7px; }.toast { max-width: 340px; padding: 10px 13px; background: #20362b; color: white; border-radius: 5px; box-shadow: var(--shadow); font-size: 13px; animation: appear .2s ease; }.toast.error { background: #9f332c; } @keyframes appear { from { opacity: 0; transform: translateY(8px); } }
.project-tabs { display:flex; gap:5px; margin-bottom:9px; overflow:auto; }.project-tabs button { min-height:38px; display:flex; align-items:center; gap:7px; padding:0 13px; border:1px solid var(--line); border-radius:5px; background:#fff; color:var(--muted); white-space:nowrap; }.project-tabs button i { width:15px;height:15px; }.project-tabs button span { min-width:20px; padding:1px 5px; border-radius:10px; background:#eef1ec; font-size:10px; }.project-tabs button.active { border-color:var(--moss); background:var(--moss); color:white; }.project-tabs button.active span { background:rgba(255,255,255,.18); }.category-tabs { display:flex; align-items:center; gap:5px; margin-bottom:13px; }.category-tabs>span { color:var(--muted); font-size:11px; margin-right:3px; }.category-tabs button { border:0; border-radius:999px; background:#e9ede6; color:#526057; padding:5px 11px; font-size:11px; }.category-tabs button.active { background:#d9edc7; color:#1d5e43; font-weight:700; }.filter-month { height:31px; border:1px solid var(--line); border-radius:4px; padding:0 7px; color:var(--ink); background:#fff; font-size:12px; }.project-title-cell { display:flex; align-items:flex-start; gap:7px; padding-left:calc(var(--depth) * 20px); min-width:260px; }.project-title-cell>i { width:15px;height:15px;margin-top:2px;color:#7a897f;flex:none; }.child-project td { background:#fcfdfb; }.kind-product { background:#e4f1f7;color:#176486; }.kind-design { background:#f0eafa;color:#6d4aa0; }.kind-marketing { background:#fff0d6;color:#925600; }.kind-department { background:#edf0eb;color:#59665e; }
.picker-native { display:none!important; }.project-picker { position:relative; width:100%; }.picker-input-wrap { position:relative; display:flex; align-items:center; }.picker-input-wrap>i { position:absolute;left:9px;width:15px;height:15px;color:var(--soft);pointer-events:none; }.field .picker-input { padding-left:31px;padding-right:34px; }.picker-clear { position:absolute;right:4px;width:27px;height:27px;border:0;background:transparent;color:var(--soft);display:grid;place-items:center;border-radius:4px; }.picker-clear:hover { background:#edf1eb;color:var(--ink); }.picker-clear i { width:14px;height:14px; }.picker-results { display:none;position:absolute;z-index:60;left:0;right:0;top:37px;max-height:280px;overflow:auto;padding:5px;background:#fff;border:1px solid var(--line-strong);border-radius:5px;box-shadow:var(--shadow); }.picker-results.open { display:block; }.picker-results button { width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:8px;border:0;background:#fff;border-radius:4px;text-align:left;color:var(--ink); }.picker-results button:hover { background:#eef5e9; }.picker-results button span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.picker-results button small { flex:none;color:var(--muted);font-size:10px; }.picker-empty { padding:14px;text-align:center;color:var(--muted);font-size:12px; }.picker-result-count { display:flex;justify-content:space-between;gap:10px;padding:7px 8px;border-bottom:1px solid var(--line);color:var(--ink);font-size:10px;font-weight:700; }.picker-result-count small { color:var(--muted);font-size:9px;font-weight:500; }
.advanced-options { margin-top:14px;border-top:1px solid var(--line);padding-top:10px; }.advanced-options summary { display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;cursor:pointer;list-style:none;padding:4px 0 11px; }.advanced-options summary::-webkit-details-marker { display:none; }.advanced-options summary i { width:14px;height:14px; }.advanced-options .form-grid { padding-top:3px; }
.project-class-tabs button { min-height:38px; }
.project-action { min-width:132px;background:#176486!important;border-color:#176486!important; }
.project-summary-strip { display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:7px;margin-bottom:9px; }
.project-summary-item { min-height:48px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:7px 11px;border:1px solid var(--line);border-left:3px solid #87938a;border-radius:6px;background:#fff;color:var(--muted);text-align:left; }
.project-summary-item svg { width:15px;height:15px; }
.project-summary-item strong { color:var(--ink);font-size:18px; }
.project-summary-item[data-project-status="open"] { border-left-color:var(--blue); }
.project-summary-item[data-project-status="blocked"] { border-left-color:var(--red); }
.project-summary-item[data-project-status="completed"] { border-left-color:var(--moss); }
.project-summary-item.active { border-color:var(--moss);border-left-color:var(--moss);background:var(--moss-soft);color:var(--moss); }
.quick-date-row { min-height:38px;display:flex;align-items:center;gap:6px;padding:5px 7px;border:1px solid var(--line);border-radius:6px;background:#fafbf8;overflow-x:auto; }
.quick-date-row>span { display:flex;align-items:center;gap:5px;margin-right:auto;color:var(--muted);font-size:11px;white-space:nowrap; }
.quick-date-row>span svg { width:14px;height:14px; }
.quick-date-row button { min-width:48px;height:27px;padding:0 8px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font-size:11px;white-space:nowrap; }
.quick-date-row button:hover,.quick-date-row button.active { border-color:var(--blue);background:var(--blue-soft);color:#176486; }
.field-help { display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.45; }
.unlinked-guidance { margin:0 20px 16px;padding:12px;border:1px solid #e2b4af;border-left:4px solid var(--red);border-radius:6px;background:#fff7f6;display:flex;align-items:center;justify-content:space-between;gap:14px; }
.unlinked-guidance>div:first-child { display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 7px; }
.unlinked-guidance>div:first-child svg { grid-row:1/3;color:var(--red); }
.unlinked-guidance strong { font-size:12px; }
.unlinked-guidance p { margin:0;color:var(--muted);font-size:10px; }
.unlinked-guidance>div:last-child { display:flex;gap:6px;flex:none; }
.entity-audit-strip { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-bottom:14px;border:1px solid var(--line);border-radius:6px;background:var(--line);overflow:hidden; }
.entity-audit-strip>span { min-width:0;display:flex;align-items:center;gap:5px;padding:9px 10px;background:#fafbf8;color:var(--muted);font-size:10px;white-space:nowrap; }
.entity-audit-strip svg { width:13px;height:13px;flex:none; }
.entity-audit-strip strong { overflow:hidden;text-overflow:ellipsis;color:var(--ink);font-size:11px; }
@media (max-width:720px) { .project-workbench-head { flex-wrap:nowrap!important;align-items:center!important; }.project-workbench-head>div:first-child { min-width:0; }.project-workbench-head p { display:none!important; }.project-workbench-head .head-actions { width:auto!important;margin-left:auto!important;flex:none; } }
.hide { display: none !important; }.mobile-menu, .mobile-row-meta { display: none; }
@media (max-width: 1050px) { .metric-grid { grid-template-columns: repeat(3,1fr); }.overview-grid { grid-template-columns: 1fr; }.workload-grid { grid-template-columns: repeat(2,1fr); }.project-workbench { grid-template-columns:250px minmax(0,1fr); }.project-task-metrics { grid-template-columns:repeat(3,1fr); }.task-filter-row { grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(105px,.7fr)); }.task-filter-count { grid-column:1/-1;text-align:left; } }
@media (max-width: 720px) { .app-layout { display: block; }.sidebar { position: fixed; left: 0; top: 0; z-index: 30; width: 230px; transform: translateX(-100%); transition: transform .2s; box-shadow: 14px 0 30px rgba(0,0,0,.18); }.sidebar.open { transform: translateX(0); }.mobile-menu { display: inline-grid; }.topbar { padding: 10px 13px; }.topbar h1 { font-size: 15px; min-width: 0; }.topbar .crumb { display: none; }.page { padding: 15px 13px; }.sales-page { padding:0; }.sales-frame-shell { height:calc(100vh - 52px); }.navigation-toolbar { flex-wrap:wrap; }.navigation-toolbar .search { width:100%;flex-basis:100%; }.navigation-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }.navigation-card { min-height:174px; }.navigation-card-link { grid-template-columns:36px minmax(0,1fr);padding:13px 11px 10px;column-gap:8px; }.navigation-card-icon { width:36px;height:36px; }.navigation-card-link>small { grid-column:2; }.navigation-card-link h3 { grid-column:1/3;margin-top:7px; }.navigation-open { grid-column:1/3; }.page-head { align-items: flex-start; flex-wrap: wrap; }.page-head h2 { font-size: 19px; }.page-head .head-actions { margin-left: 0; width: 100%; }.meeting-scope-grid,.task-scope-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.task-filter-row { grid-template-columns:repeat(2,minmax(0,1fr)); }.task-filter-row .search { grid-column:1/-1; }.task-filter-count { grid-column:1/-1;text-align:left; }.metric-grid,.mine-metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }.metric { min-height: 80px; padding: 11px; }.metric strong { font-size: 22px; }.toolbar { flex-wrap: wrap; }.search { min-width: min(100%,215px); flex: 1; }.filter-select { flex: 1; max-width: none; }.table-wrap { max-height: calc(100vh - 245px); }.task-data-table,.project-data-table { min-width: 0; }.task-data-table thead,.project-data-table thead { display: none; }.task-data-table tbody,.project-data-table tbody { display: block; }.task-data-table tr,.project-data-table tr { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; min-height: 67px; padding: 10px; border-bottom: 1px solid #e9eee7; }.task-data-table td,.project-data-table td { display: none; height: auto; padding: 0; border: 0; }.task-data-table td:first-child,.project-data-table td:first-child { display: block; min-width: 0; }.task-data-table td:nth-child(3),.project-data-table td:nth-child(5) { display: block; }.task-data-table .task-group-row { display:block;min-height:0;padding:7px 10px;background:#f0f3ee; }.task-data-table .task-group-row td:first-child { display:block;background:transparent!important; }.task-data-table .inline-select { border-color: var(--line); background: #fff; }.mobile-task-description { display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-size:11px;line-height:1.4;margin-top:4px; }.mobile-row-meta { display: block; color: var(--muted); font-size: 11px; margin-top: 4px; }.decision-row { grid-template-columns: 1fr 90px; }.decision-row > :nth-child(3), .decision-row > :nth-child(4) { display: none; }.workload-grid { grid-template-columns: 1fr; }.form-grid { grid-template-columns: 1fr; }.project-create-layout { grid-template-columns:1fr; }.batch-task-section { padding:18px 0 0;border-left:0;border-top:1px solid var(--line); }.people-group { grid-template-columns:1fr; }.people-group-title { padding-top:0; }.person-card { min-width:86px; }.smart-progress-box { grid-template-columns:1fr; }.smart-progress-box .tool-btn { width:100%; }.project-summary-strip { display:flex;overflow-x:auto; }.project-summary-item { min-width:132px; }.unlinked-guidance { margin:0 14px 14px;align-items:stretch;flex-direction:column; }.unlinked-guidance>div:last-child { flex-wrap:wrap; }.entity-audit-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }.project-workbench { display:block;min-height:0;border:0;background:transparent;overflow:visible; }.project-browser { border:1px solid var(--line);border-radius:7px;margin-bottom:10px; }.project-pick-list { display:flex;overflow:auto;max-height:none;padding:8px; }.project-pick-card { min-width:210px;background:#fff;border-color:var(--line); }.project-task-stage { max-height:none;padding:13px;border:1px solid var(--line);border-radius:7px;background:#fff; }.selected-project-head { flex-wrap:wrap; }.selected-project-head h2 { font-size:18px; }.selected-project-actions { width:100%;margin-left:0; }.project-task-metrics { grid-template-columns:repeat(2,1fr); }.workbench-task-table { min-width:0; }.workbench-task-table thead { display:none; }.workbench-task-table tbody { display:block; }.workbench-task-table tr { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:11px;border-bottom:1px solid var(--line); }.workbench-task-table td { display:none;padding:0;border:0; }.workbench-task-table td:first-child,.workbench-task-table td:nth-child(5) { display:block; }.task-summary-grid { grid-template-columns:repeat(2,1fr); }.task-detail-body { padding:15px; }.people-picker-pop .people-group { grid-template-columns:1fr; }.login-page { grid-template-columns: 1fr; }.login-aside { display: none; }.login-box { margin: auto; }.top-actions .tool-btn:not(.primary) { display: none; } }

.project-filter-panel { margin-bottom:10px;padding:8px;border:1px solid var(--line);border-radius:7px;background:#fff;display:grid;gap:7px; }
.project-primary-filter-row { min-width:0;display:flex;align-items:center;gap:10px;overflow-x:auto; }
.project-primary-filter-row .project-tabs { margin:0;flex:none; }
.project-owner-tabs { min-height:38px;display:flex;align-items:center;gap:5px;padding-left:10px;border-left:1px solid var(--line);white-space:nowrap; }
.project-owner-tabs>span { color:var(--muted);font-size:10px; }
.project-owner-tabs button { height:34px;display:flex;align-items:center;gap:5px;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--muted);font-size:11px; }
.project-owner-tabs button.active { border-color:var(--blue);background:var(--blue-soft);color:var(--blue); }
.project-owner-tabs .avatar { width:21px;height:21px;font-style:normal;font-size:8px; }
.project-owner-tabs strong { min-width:17px;padding:1px 4px;border-radius:9px;background:#edf1eb;color:var(--ink);font-size:9px;text-align:center; }
.project-brand-tabs { min-height:38px;display:flex;align-items:center;gap:4px;padding-left:10px;border-left:1px solid var(--line);white-space:nowrap; }
.project-brand-tabs>span { color:var(--muted);font-size:10px; }
.project-brand-tabs button { height:32px;display:flex;align-items:center;gap:4px;padding:0 8px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--muted);font-size:10px; }
.project-brand-tabs button strong { min-width:16px;padding:1px 4px;border-radius:8px;background:#edf1eb;color:var(--ink);font-size:8px;text-align:center; }
.project-brand-tabs button.active { border-color:var(--violet);background:var(--violet-soft);color:var(--violet);font-weight:700; }
.project-category-hierarchy { min-width:0;display:flex;align-items:stretch;gap:6px;overflow-x:auto;padding-top:7px;border-top:1px solid var(--line); }
.category-all { min-width:112px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;background:#f6f8f4;color:var(--ink);white-space:nowrap;font-size:11px; }
.category-all svg { width:14px;height:14px; }
.category-all.active { border-color:var(--moss);background:var(--moss);color:#fff; }
.category-family { min-height:44px;display:flex;align-items:center;gap:5px;padding:5px;border:1px solid var(--family-line);border-radius:6px;background:var(--family-soft);white-space:nowrap; }
.category-family.family-food { --family-color:#17664b;--family-line:#b8d7c2;--family-soft:#eef7f0; }
.category-family.family-general_merchandise { --family-color:#176486;--family-line:#b5d3df;--family-soft:#eef7fa; }
.category-family.family-other { --family-color:#66736a;--family-line:#cdd4cf;--family-soft:#f2f4f1; }
.category-family>i { display:flex;color:var(--family-color); }
.category-family>i svg { width:13px;height:13px; }
.category-parent,.category-children button { height:32px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink);font-size:11px; }
.category-parent { min-width:74px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 9px;color:var(--family-color);font-weight:700; }
.category-parent strong { font-size:11px; }
.category-children { display:flex;gap:3px; }
.category-children button { padding:0 8px; }
.category-children button span { margin-left:4px;color:var(--muted);font-size:9px; }
.category-parent:hover,.category-children button:hover,.category-parent.active,.category-children button.active { border-color:var(--family-color);background:#fff;color:var(--family-color); }
.project-pick-top em { max-width:126px;overflow:hidden;text-overflow:ellipsis;font-style:normal;color:var(--muted);font-size:9px;white-space:nowrap; }
.selected-category-path { padding-left:7px;border-left:1px solid var(--line);color:var(--blue); }
.product-classification-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.product-classification-fields>.field { margin:0; }
.category-add-row { grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:8px;border:1px solid var(--line);border-radius:6px;background:#f7faf6; }
.category-add-row .tool-btn { height:33px; }
.empty-project-control { margin-top:12px;padding-top:12px;border-top:1px solid var(--line); }
.empty-project-control>label { display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700; }
.empty-project-control input { width:16px;min-height:16px; }
.empty-project-warning { margin-top:8px;padding:10px;display:flex;align-items:flex-start;gap:8px;border:1px solid #e2b4af;border-left:4px solid var(--red);border-radius:6px;background:#fff7f6;color:var(--red); }
.empty-project-warning svg { width:16px;height:16px;flex:none; }
.empty-project-warning span,.empty-project-warning strong { display:block; }
.empty-project-warning span { color:var(--muted);font-size:10px;line-height:1.5; }
.empty-project-warning strong { margin-bottom:2px;color:var(--red);font-size:11px; }
.disabled-task-list { opacity:.4;filter:grayscale(.4); }
.team-task-overlay { position:fixed;inset:0;z-index:38;padding:20px;background:rgba(17,30,23,.46);display:grid;place-items:center; }
.team-task-screen { width:min(1320px,100%);height:min(900px,calc(100vh - 40px));display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:8px;background:#fff;box-shadow:0 22px 60px rgba(12,28,18,.24);overflow:hidden; }
.team-task-screen>header { min-height:72px;display:flex;align-items:flex-start;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line); }
.team-task-screen>header span { color:var(--muted);font-size:10px; }
.team-task-screen>header h2 { margin:3px 0 2px;font-size:18px; }
.team-task-screen>header p { margin:0;color:var(--muted);font-size:10px; }
.team-task-screen>header .icon-btn { margin-left:auto;flex:none; }
.team-task-screen-body { min-height:0;padding:14px;overflow:auto;background:#f7f9f5; }
.team-task-table-shell { min-height:100%;border:1px solid var(--line);border-radius:7px;background:#fff;overflow:auto; }
.team-overlay-task-table { min-width:920px; }
.team-overlay-task-table tbody tr { cursor:pointer; }
.team-overlay-task-table tbody tr:hover td { background:#f7faf5; }
.library-page-head { align-items:center; }.library-browser { min-height:calc(100vh - 132px);border:1px solid var(--line);border-radius:7px;background:#fff;overflow:hidden; }.library-toolbar { min-height:58px;display:flex;align-items:center;gap:14px;padding:10px 13px;border-bottom:1px solid var(--line);background:#fbfcf9; }.library-breadcrumbs { min-width:0;display:flex;align-items:center;overflow-x:auto; }.library-breadcrumbs button { height:32px;display:flex;align-items:center;gap:4px;padding:0 5px;border:0;background:transparent;color:var(--blue);font-size:11px;white-space:nowrap; }.library-breadcrumbs button:first-child { font-weight:700; }.library-breadcrumbs button:disabled { color:var(--ink);cursor:default; }.library-breadcrumbs svg { width:13px;height:13px; }.library-tools { margin-left:auto;display:flex;align-items:center;gap:7px;flex:none; }.library-tools .search { width:230px; }.library-view-switch { display:flex;border:1px solid var(--line);border-radius:5px;overflow:hidden; }.library-view-switch button { width:31px;height:30px;display:grid;place-items:center;border:0;border-left:1px solid var(--line);background:#fff;color:var(--muted); }.library-view-switch button:first-child { border-left:0; }.library-view-switch button.active { background:var(--moss-soft);color:var(--moss); }.library-view-switch svg { width:14px;height:14px; }.library-summary { min-height:37px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 14px;color:var(--muted);font-size:10px; }.library-summary small { display:flex;align-items:center;gap:4px; }.library-summary svg { width:12px;height:12px; }.library-grid { min-height:420px;padding:8px 14px 18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));align-content:start;gap:9px;position:relative; }.library-grid.is-drop-target:after { content:'松开即可上传到当前文件夹';position:absolute;inset:10px;z-index:5;display:grid;place-items:center;border:2px dashed var(--blue);border-radius:7px;background:rgba(225,241,247,.94);color:var(--blue);font-weight:700; }.library-card { min-width:0;position:relative;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s; }.library-card:hover { border-color:#9eb4a2;box-shadow:0 3px 10px rgba(26,43,31,.07); }.library-card-open { width:100%;padding:0;border:0;background:transparent;color:var(--ink);text-align:left; }.library-card figure { height:112px;margin:0;display:grid;place-items:center;background:#f2f5f0;overflow:hidden; }.library-card figure img { width:100%;height:100%;object-fit:cover; }.library-type-icon { width:44px;height:50px;display:grid;place-items:center;border-radius:6px;background:#e9efea;color:var(--muted); }.library-type-icon svg { width:25px;height:25px; }.library-type-icon.type-folder { background:var(--amber-soft);color:var(--amber); }.library-type-icon.type-pdf { background:var(--red-soft);color:var(--red); }.library-type-icon.type-video { background:var(--violet-soft);color:var(--violet); }.library-type-icon.type-audio { background:var(--blue-soft);color:var(--blue); }.library-type-icon.type-text { background:var(--moss-soft);color:var(--moss); }.library-card-open>div { min-width:0;padding:9px 30px 10px 10px; }.library-card strong,.library-card small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.library-card strong { font-size:11px; }.library-card small { margin-top:4px;color:var(--muted);font-size:9px; }.library-download { position:absolute;right:5px;bottom:7px;width:25px;height:25px;display:grid;place-items:center;border-radius:4px;color:var(--muted); }.library-download:hover { background:var(--blue-soft);color:var(--blue); }.library-download svg { width:13px;height:13px; }.library-grid.view-list { display:block;padding-top:0; }.library-grid.view-list .library-card { min-height:54px;margin-bottom:5px; }.library-grid.view-list .library-card-open { min-height:52px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center; }.library-grid.view-list .library-card figure { width:40px;height:40px;margin-left:6px;border-radius:4px; }.library-grid.view-list .library-type-icon { width:34px;height:36px; }.library-grid.view-list .library-type-icon svg { width:19px;height:19px; }.library-grid.view-list .library-card-open>div { padding:7px 38px 7px 7px; }.library-load-more { display:block;width:180px;height:34px;margin:0 auto 18px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--ink);font-size:11px; }.library-preview-overlay { position:fixed;inset:0;z-index:70;padding:18px;display:grid;place-items:center;background:rgba(13,25,18,.72); }.library-preview-screen { width:min(1440px,100%);height:calc(100vh - 36px);display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:7px;background:#fff;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.28); }.library-preview-screen>header { min-height:68px;display:flex;align-items:center;gap:9px;padding:10px 14px;border-bottom:1px solid var(--line); }.library-preview-screen>header>div { min-width:0;margin-right:auto; }.library-preview-screen>header span,.library-preview-screen>header h2,.library-preview-screen>header p { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.library-preview-screen>header span { color:var(--muted);font-size:9px; }.library-preview-screen>header h2 { margin:3px 0;font-size:15px; }.library-preview-screen>header p { margin:0;color:var(--muted);font-size:9px; }.library-preview-screen>main { min-height:0;display:grid;place-items:center;overflow:auto;background:#eef1ed; }.library-preview-image { display:block;max-width:100%;max-height:100%;object-fit:contain; }.library-preview-frame { width:100%;height:100%;border:0;background:#fff; }.library-preview-video { max-width:100%;max-height:100%; }.library-audio-preview,.library-no-preview { display:grid;place-items:center;gap:12px;text-align:center;color:var(--muted); }.library-audio-preview>svg,.library-no-preview>svg { width:52px;height:52px;color:var(--blue); }.library-audio-preview audio { width:min(520px,80vw); }.library-no-preview strong { color:var(--ink); }.library-text-preview { align-self:stretch;justify-self:stretch;margin:0;padding:22px;overflow:auto;background:#fff;color:#263129;font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;word-break:break-word; }.attachment-file-picker { min-height:42px!important;display:flex!important;align-items:center;gap:7px;padding:9px 11px;border:1px dashed #9eb4a2;border-radius:6px;background:#f7faf6;color:var(--moss)!important;cursor:pointer;font-weight:700; }.attachment-file-picker:hover { border-color:var(--moss);background:var(--moss-soft); }.attachment-file-picker svg { width:15px;height:15px; }.attachment-file-picker input,.attachment-detail-upload input { display:none; }.attachment-list { display:grid;gap:5px; }.attachment-row { min-height:52px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px;border:1px solid var(--line);border-radius:5px;background:#fafbf8; }.attachment-row>span { width:40px;height:38px;display:grid;place-items:center;border-radius:4px;background:#edf1eb;color:var(--muted);overflow:hidden; }.attachment-row>span img { width:100%;height:100%;object-fit:cover; }.attachment-row>span svg { width:18px;height:18px; }.attachment-row>button { min-width:0;padding:0;border:0;background:transparent;text-align:left;color:var(--ink); }.attachment-row strong,.attachment-row small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.attachment-row strong { font-size:11px; }.attachment-row small { margin-top:3px;color:var(--muted);font-size:9px; }.attachment-row>a { width:29px;height:29px;display:grid;place-items:center;border-radius:4px;color:var(--blue); }.attachment-row>a:hover { background:var(--blue-soft); }.attachment-row>a svg { width:14px;height:14px; }.attachment-row.is-missing { opacity:.55; }.attachment-row em { color:var(--red);font-size:9px;font-style:normal; }.attachment-detail-upload { min-height:36px;margin-top:8px;display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #9eb4a2;border-radius:5px;background:#f7faf6;color:var(--moss);font-size:11px;font-weight:700;cursor:pointer; }.attachment-detail-upload:hover { border-color:var(--moss);background:var(--moss-soft); }.attachment-detail-upload svg { width:14px;height:14px; }

@media (max-width:720px) {
  .project-filter-panel { padding:7px; }
  .project-primary-filter-row,.project-category-hierarchy { overflow-x:auto; }
  .project-owner-tabs { flex:none; }
  .project-brand-tabs { flex:none; }
  .category-family { flex:none; }
  .product-classification-fields { grid-template-columns:1fr; }
  .team-task-overlay { padding:0; }
  .team-task-screen { width:100%;height:100vh;border-radius:0; }
  .team-task-screen-body { padding:8px; }
  .team-overlay-task-table { min-width:0; }
  .team-overlay-task-table thead { display:none; }
  .team-overlay-task-table tbody { display:block; }
  .team-overlay-task-table tr { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;padding:11px;border-bottom:1px solid var(--line); }
  .team-overlay-task-table td { display:none;padding:0;border:0; }
  .team-overlay-task-table td:first-child,.team-overlay-task-table td:nth-child(3) { display:block; }
  .library-page-head { align-items:flex-end; }.library-page-head p { display:none; }.library-browser { min-height:calc(100vh - 130px); }.library-toolbar { align-items:stretch;flex-direction:column;gap:7px; }.library-tools { width:100%;margin-left:0; }.library-tools .search { min-width:0;width:auto;flex:1; }.library-grid { grid-template-columns:repeat(2,minmax(0,1fr));padding:7px; }.library-card figure { height:96px; }.library-preview-overlay { padding:0; }.library-preview-screen { width:100%;height:100vh;border-radius:0; }.library-preview-screen>header { min-height:62px; }.library-preview-screen>header .tool-btn { width:32px;padding:0;font-size:0; }.library-preview-screen>header .tool-btn svg { margin:0; }.attachment-row { grid-template-columns:36px minmax(0,1fr) auto; }.attachment-row>span { width:36px;height:36px; }
}

.notification-panel { width:min(390px,calc(100vw - 24px));max-height:calc(100vh - 76px);position:fixed;z-index:65;top:58px;right:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr);border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 20px 60px rgba(18,35,24,.2);overflow:hidden; }.notification-panel>header { min-height:64px;display:flex;align-items:center;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line); }.notification-panel>header>div { min-width:0;flex:1; }.notification-panel h2 { margin:0;font-size:16px; }.notification-panel header span { display:block;margin-top:3px;color:var(--muted);font-size:10px; }.notification-actions { min-height:39px;display:flex;justify-content:flex-end;gap:5px;padding:5px 9px;border-bottom:1px solid var(--line);background:#fafbf8; }.notification-actions button { height:28px;display:flex;align-items:center;gap:5px;padding:0 8px;border:0;border-radius:4px;background:transparent;color:var(--moss);font-size:10px; }.notification-actions button:hover { background:var(--moss-soft); }.notification-actions svg { width:13px;height:13px; }.notification-list { min-height:140px;overflow:auto; }.notification-item { width:100%;min-height:76px;display:grid;grid-template-columns:9px minmax(0,1fr);gap:8px;padding:10px 13px;border:0;border-bottom:1px solid #edf0eb;background:#fff;color:var(--ink);text-align:left; }.notification-item:hover { background:#f8faf6; }.notification-item.is-read { opacity:.68; }.notification-dot { width:7px;height:7px;margin-top:17px;border-radius:50%;background:var(--blue); }.notification-item.severity-warning .notification-dot { background:var(--amber); }.notification-item.severity-danger .notification-dot { background:var(--red); }.notification-item small,.notification-item strong,.notification-item p,.notification-item time { display:block; }.notification-item small { color:var(--muted);font-size:9px; }.notification-item strong { margin-top:3px;font-size:12px; }.notification-item p { margin:3px 0;color:var(--ink);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }.notification-item time { color:var(--soft);font-size:9px; }
.profile-modal { width:min(620px,calc(100vw - 36px)); }.profile-body { padding:18px;display:grid;gap:12px; }.profile-identity { display:flex;align-items:center;gap:16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#f8faf6; }.profile-avatar-wrap { position:relative;flex:none; }.profile-avatar { width:76px;height:76px;border-radius:50%;background:#c6e2d1;color:#1d4534;display:grid;place-items:center;font-size:22px;font-weight:800; }.profile-avatar-wrap button { height:25px;position:absolute;left:50%;bottom:-5px;transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:0 7px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--moss);font-size:9px;white-space:nowrap;box-shadow:0 2px 7px rgba(20,40,27,.1); }.profile-avatar-wrap button svg { width:11px;height:11px; }.profile-identity h3 { margin:0;font-size:18px; }.profile-identity p { margin:4px 0;color:var(--muted);font-size:12px; }.profile-identity small { color:var(--soft);font-size:10px; }.profile-notice-summary { display:grid;grid-template-columns:repeat(2,1fr);gap:8px; }.profile-notice-summary>button,.profile-notice-summary>div { min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:10px 13px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);text-align:left; }.profile-notice-summary>button:hover { border-color:var(--moss); }.profile-notice-summary span { color:var(--muted);font-size:11px; }.profile-notice-summary strong { font-size:21px; }.profile-notice-summary .danger strong { color:var(--red); }.profile-section { min-height:66px;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:7px; }.profile-section>div { min-width:0;flex:1; }.profile-section h3 { margin:0;font-size:13px; }.profile-section p { margin:4px 0 0;color:var(--muted);font-size:10px; }
.settings-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }.settings-panel { min-width:0; }.settings-panel .panel-head { justify-content:space-between; }.settings-panel .panel-head>div { min-width:0; }.settings-panel .panel-head h3 { margin:0;font-size:13px; }.settings-panel .panel-head span { display:block;margin-top:3px;font-size:10px; }.settings-people-list { max-height:320px;padding:7px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;overflow:auto; }.settings-person { min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px;border:1px solid var(--line);border-radius:5px;background:#fafbf8; }.settings-person .avatar { width:30px;height:30px;font-size:9px; }.settings-person strong,.settings-person small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.settings-person strong { font-size:11px; }.settings-person small { margin-top:2px;color:var(--muted);font-size:8px; }.settings-person>span { color:var(--moss);font-size:8px;white-space:nowrap; }.settings-person.is-inactive { opacity:.55; }.export-form { padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:9px;align-items:end; }.export-form .field { margin:0; }.export-form button { grid-column:1/-1;height:36px; }.export-form p { grid-column:1/-1;margin:2px 0 0;color:var(--muted);font-size:10px;line-height:1.55; }.settings-library-panel { grid-column:1/-1; }.folder-visibility-grid { padding:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px; }.folder-visibility-card { min-width:0;cursor:pointer; }.folder-visibility-card>input { position:absolute;opacity:0;pointer-events:none; }.folder-visibility-card>span { min-height:58px;display:grid;grid-template-columns:25px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:1px 7px;padding:8px;border:1px solid var(--line);border-radius:6px;background:#fff; }.folder-visibility-card svg { grid-row:1/3;width:23px;height:23px;padding:4px;border-radius:5px;background:var(--amber-soft);color:var(--amber); }.folder-visibility-card strong,.folder-visibility-card small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.folder-visibility-card strong { font-size:11px; }.folder-visibility-card small { color:var(--muted);font-size:8px; }.folder-visibility-card input:checked+span { border-color:var(--red);background:var(--red-soft); }.folder-visibility-card input:checked+span svg { background:#fff;color:var(--red); }.settings-history { margin-top:14px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--muted);font-size:10px; }.settings-history summary { padding:10px 12px;cursor:pointer; }.settings-history>div { padding:0 12px 8px;border-top:1px solid var(--line); }.settings-history p { display:flex;justify-content:space-between;gap:12px;margin:0;padding:7px 0;border-bottom:1px solid #edf0eb; }.settings-history span { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }.settings-team-picker { display:flex;gap:6px;flex-wrap:wrap; }.settings-team-picker button { height:36px;padding:0 12px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--muted); }.settings-team-picker button.active { border-color:var(--moss);background:var(--moss-soft);color:var(--moss);font-weight:700; }.credential-success { padding:8px;text-align:center; }.credential-success>svg { width:42px;height:42px;color:var(--moss); }.credential-success h3 { margin:9px 0 5px; }.credential-success p { margin:0 0 15px;color:var(--muted);font-size:11px; }.credential-success>div { max-width:360px;margin:6px auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px solid var(--line);border-radius:5px;background:#fafbf8;text-align:left; }.credential-success span { color:var(--muted);font-size:10px; }.credential-success strong { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; }.credential-success>button { margin-top:10px; }
@media (max-width:900px) { .settings-grid { grid-template-columns:1fr; }.settings-library-panel { grid-column:auto; }.folder-visibility-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:720px) { .notification-panel { width:100%;max-height:calc(100vh - 52px);top:52px;right:0;border-radius:0; }.settings-people-list { grid-template-columns:1fr; }.folder-visibility-grid { grid-template-columns:1fr; }.profile-body { padding:12px; }.profile-identity { padding:12px; }.profile-avatar { width:62px;height:62px; }.page-head.actions-only .head-actions { width:auto;margin-left:auto; }.top-actions { gap:5px; }.notification-bell { width:32px;height:32px; } }

.tool-btn.report-due { position:relative;border-color:#d99a35;background:var(--amber-soft);color:#81500c; }.tool-btn.report-submitted { border-color:#a8d0b5;background:var(--moss-soft);color:var(--moss); }.report-reminder-dot { width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px rgba(178,58,50,.12); }
.project-month-filter { min-height:34px;display:grid;grid-template-columns:16px auto minmax(0,1fr);align-items:center;gap:6px;padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:#fff;color:var(--muted);font-size:10px; }
.project-month-filter svg { width:14px;height:14px;color:var(--moss); }
.project-month-filter input { width:100%;min-width:0;height:25px;padding:0 4px;border:0;background:transparent;color:var(--ink);font-size:11px;outline:none; }
.project-month-filter:focus-within { border-color:var(--moss);box-shadow:0 0 0 2px rgba(23,102,75,.08); }
.report-status { display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:2px 8px;border-radius:99px;font-size:10px;font-weight:700;white-space:nowrap; }.report-status.is-draft { background:var(--amber-soft);color:var(--amber); }.report-status.is-submitted { background:var(--moss-soft);color:var(--moss); }
.report-editor-overlay { position:fixed;inset:0;z-index:78;padding:14px;display:grid;place-items:center;background:rgba(13,27,18,.62); }.report-editor-screen { width:min(1520px,100%);height:calc(100vh - 28px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-radius:9px;background:#f5f7f2;box-shadow:0 28px 80px rgba(9,24,15,.3);overflow:hidden; }.report-editor-screen>header { min-height:78px;display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);background:#fff; }.report-editor-screen>header>div { min-width:0;flex:1; }.report-editor-screen>header span { color:var(--moss);font-size:10px;font-weight:700; }.report-editor-screen>header h2 { margin:3px 0;font-size:19px; }.report-editor-screen>header p { margin:0;color:var(--muted);font-size:10px; }.report-editor-screen>header>.report-status { flex:none;color:var(--amber); }.report-editor-screen>header>.report-status.is-submitted { color:var(--moss); }.report-editor-screen>main { min-height:0;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(310px,.6fr);gap:12px;padding:12px;overflow:hidden; }.report-editor-main { min-height:0;display:grid;gap:11px;overflow:auto;padding-right:3px; }.report-writing-card { padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff; }.report-writing-card.section-missing { border-color:var(--red);box-shadow:0 0 0 2px rgba(178,58,50,.08); }.report-writing-head { display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px; }.report-writing-head>div { display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:8px; }.report-writing-head>div>span { grid-row:1/3;width:28px;height:28px;display:grid;place-items:center;border-radius:6px;background:var(--moss-soft);color:var(--moss);font-size:10px;font-weight:800; }.report-writing-head h3 { margin:0;font-size:14px; }.report-writing-head p { margin:3px 0 0;color:var(--muted);font-size:9px; }.report-writing-head .tool-btn { flex:none;height:29px; }.report-entry-list { display:grid;gap:7px; }.report-entry-row { display:grid;grid-template-columns:27px minmax(0,1fr) 28px;align-items:start;gap:7px;padding:7px;border:1px solid var(--line);border-radius:6px;background:#fafbf8; }.report-entry-number { width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:#e9eee8;color:var(--muted);font-size:10px;font-weight:700; }.report-entry-row>div { min-width:0; }.report-entry-row textarea { width:100%;min-height:45px;padding:6px 7px;border:0;background:transparent;color:var(--ink);font-size:12px;line-height:1.5;resize:vertical;outline:none; }.report-entry-row:focus-within { border-color:var(--moss);background:#fff;box-shadow:0 0 0 2px rgba(23,102,75,.08); }.report-entry-row>.icon-btn { width:26px;height:26px;border:0;background:transparent;color:var(--soft); }.report-entry-row>.icon-btn:hover { background:var(--red-soft);color:var(--red); }.report-entry-row.quality-pass { border-color:#9ec9ab;background:#f4faf5; }.report-entry-row.quality-fail { border-color:#dfaaa5;background:#fff8f7; }.report-quality-feedback { min-height:0;display:flex;align-items:flex-start;gap:4px;padding:0 7px;color:var(--moss);font-size:9px;line-height:1.45; }.report-quality-feedback:empty { display:none; }.quality-fail .report-quality-feedback { color:var(--red); }.report-quality-feedback svg { width:12px;height:12px;flex:none;margin-top:1px; }.report-quality-feedback strong,.report-quality-feedback span { display:block; }.report-quality-feedback span { color:var(--muted); }
.report-reference-pane { min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden; }.report-reference-head { min-height:72px;display:flex;align-items:center;gap:8px;padding:11px 12px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#edf6ef,#eef7fa); }.report-reference-head>div { min-width:0;flex:1; }.report-reference-head h3 { display:flex;align-items:center;gap:5px;margin:0;color:var(--moss);font-size:13px; }.report-reference-head h3 svg { width:15px;height:15px; }.report-reference-head p { margin:4px 0 0;color:var(--muted);font-size:9px; }.report-reference-head .tool-btn { flex:none; }.report-reference-pane>div:last-child { min-height:0;padding:10px;overflow:auto; }.report-reference-notice { display:flex;align-items:flex-start;gap:7px;padding:9px;border:1px solid #e1bf86;border-radius:6px;background:var(--amber-soft);color:var(--amber); }.report-reference-notice>svg { width:15px;height:15px;flex:none; }.report-reference-notice strong,.report-reference-notice span { display:block; }.report-reference-notice strong { font-size:10px; }.report-reference-notice span { margin-top:2px;color:#70531f;font-size:9px;line-height:1.4; }.report-reference-summary { margin:10px 2px;color:var(--muted);font-size:10px;line-height:1.55; }.report-reference-signals { display:grid;gap:7px; }.report-reference-signal { padding:9px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:5px;background:#fafbf8; }.report-reference-signal.type-achievement { border-left-color:var(--moss); }.report-reference-signal.type-issue { border-left-color:var(--red); }.report-reference-signal>span { color:var(--blue);font-size:8px;font-weight:800; }.report-reference-signal.type-achievement>span { color:var(--moss); }.report-reference-signal.type-issue>span { color:var(--red); }.report-reference-signal strong,.report-reference-signal small { display:block;margin-top:3px; }.report-reference-signal strong { font-size:11px; }.report-reference-signal small { color:var(--muted);font-size:8px; }.report-reference-signal p { margin:5px 0;color:var(--ink);font-size:9px;line-height:1.45; }.report-reference-signal em { display:block;padding-top:5px;border-top:1px dashed var(--line);color:var(--muted);font-size:9px;font-style:normal;line-height:1.45; }.report-reference-empty { min-height:260px;display:grid;place-content:center;justify-items:center;padding:25px;text-align:center;color:var(--muted); }.report-reference-empty svg { width:34px;height:34px;color:#8fa99a; }.report-reference-empty p { margin:10px 0 3px;font-size:11px; }.report-reference-empty small { font-size:9px; }.report-editor-screen>footer { min-height:60px;display:flex;align-items:center;justify-content:flex-end;gap:7px;padding:9px 14px;border-top:1px solid var(--line);background:#fff; }.report-calendar-note { min-width:0;margin-right:auto;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px; }.report-calendar-note svg { width:14px;height:14px;flex:none;color:var(--moss); }
.report-reference-notice.is-model { border-color:#a9cbb5;background:#eff8f2;color:var(--moss); }.report-reference-notice.is-model span { color:#4f6b59; }.report-ai-generated { display:grid;gap:9px;margin:10px 0;padding:10px;border:1px solid #b9d6c2;border-radius:7px;background:#f5fbf6; }.report-ai-generated-title,.report-fact-title { display:flex;align-items:center;justify-content:space-between;gap:8px; }.report-ai-generated-title strong,.report-fact-title strong { color:var(--moss);font-size:11px; }.report-ai-generated-title span,.report-fact-title span { color:var(--muted);font-size:8px; }.report-ai-section { padding:9px;border-radius:6px;background:#fff;border-left:3px solid var(--blue); }.report-ai-section.type-achievement { border-left-color:var(--moss); }.report-ai-section.type-issue { border-left-color:var(--red); }.report-ai-section h4 { display:flex;align-items:center;justify-content:space-between;margin:0 0 7px;font-size:10px; }.report-ai-section h4 span { color:var(--muted);font-size:8px;font-weight:500; }.report-ai-section ol { display:grid;gap:6px;margin:0;padding-left:19px; }.report-ai-section li { padding-left:1px;color:var(--ink);font-size:10px;line-height:1.5; }.report-ai-section li p { margin:0; }.report-ai-section li small { display:flex;align-items:flex-start;gap:4px;margin-top:3px;color:var(--muted);font-size:8px; }.report-ai-section li small svg { width:11px;height:11px;flex:none;margin-top:1px; }.report-fact-title { margin:12px 2px 7px;padding-top:9px;border-top:1px dashed var(--line); }
.my-report-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px; }.my-report-panel { min-width:0;overflow:hidden; }.my-report-panel .panel-head { justify-content:space-between; }.my-report-panel .panel-head>div { min-width:0; }.my-report-panel .panel-head h3 { margin:0;font-size:13px; }.my-report-panel .panel-head span { display:block;margin-top:3px;font-size:9px; }.my-report-panel .panel-head .more { border:0;background:transparent;color:var(--moss);font-size:10px; }.my-report-current { min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line);background:#f7f9f5; }.my-report-current>div { display:flex;align-items:center;gap:7px; }.my-report-current svg { width:18px;height:18px;color:var(--muted); }.my-report-current span { font-size:11px;font-weight:700; }.my-report-current small { color:var(--muted);font-size:9px;text-align:right; }.my-report-current.is-open { background:var(--amber-soft); }.my-report-current.is-open svg { color:var(--amber); }.my-report-current.is-monthly { background:var(--blue-soft); }.my-report-current.is-monthly svg { color:var(--blue); }.report-history-list { max-height:280px;padding:6px;overflow:auto; }.report-history-card { width:100%;min-height:58px;position:relative;display:block;padding:8px 28px 8px 9px;border:0;border-bottom:1px solid #edf0eb;background:#fff;color:var(--ink);text-align:left; }.report-history-card:hover { background:#f8faf6; }.report-history-card>div { display:flex;align-items:center;gap:6px; }.report-history-card strong { font-size:10px; }.report-history-card .report-status { min-height:18px;padding:1px 5px;font-size:8px; }.report-history-card p { margin:4px 0;color:var(--ink);font-size:9px; }.report-history-card small { color:var(--muted);font-size:8px; }.report-history-card>svg { position:absolute;right:8px;top:20px;width:14px;height:14px;color:var(--soft); }.report-detail-modal { width:min(720px,calc(100vw - 36px)); }.report-detail-modal .modal-head>div { min-width:0;flex:1; }.report-detail-modal .modal-head p { margin:3px 0 0;color:var(--muted);font-size:9px; }.report-detail-section { padding:13px 0;border-bottom:1px solid var(--line); }.report-detail-section:last-child { border-bottom:0; }.report-detail-section h3 { margin:0 0 8px;font-size:13px; }.report-detail-section ol { margin:0;padding-left:26px; }.report-detail-section li { padding:5px 4px;font-size:11px;line-height:1.55; }.report-detail-section>p { margin:0;color:var(--muted);font-size:10px; }
@media (max-width:980px) { .report-editor-screen>main { display:block;overflow:auto; }.report-editor-main { overflow:visible; }.report-reference-pane { min-height:420px;margin-top:12px; }.my-report-grid { grid-template-columns:1fr; } }
@media (max-width:720px) { .top-mine-entry { width:32px;padding:0;justify-content:center; }.top-mine-entry span { display:none; }.report-reminder-dot { position:absolute;top:2px;right:2px; }.report-editor-overlay { padding:0; }.report-editor-screen { width:100%;height:100vh;border-radius:0; }.report-editor-screen>header { min-height:68px;padding:9px 11px; }.report-editor-screen>header p { display:none; }.report-editor-screen>main { padding:8px; }.report-writing-card { padding:10px; }.report-writing-head p { display:none; }.report-entry-row { grid-template-columns:23px minmax(0,1fr) 25px;padding:5px; }.report-entry-number { width:22px;height:22px; }.report-editor-screen>footer { flex-wrap:wrap;padding:7px 8px; }.report-calendar-note { width:100%;order:-1; }.report-editor-screen>footer .tool-btn { flex:1;padding:0 6px; }.report-reference-pane { min-height:360px; }.my-report-current { align-items:flex-start;flex-direction:column; }.my-report-current small { text-align:left; } }
@media (max-width:720px) { .team-report-members { grid-template-columns:1fr; }.team-report-member { grid-template-columns:32px minmax(0,1fr) auto 14px; }.team-report-overlay { padding:0; }.team-report-screen { width:100%;height:100vh;border-radius:0; }.team-report-screen>header { padding:10px 12px; }.team-report-screen>header p { display:none; }.team-report-screen>main { padding:8px; } }

/* 2026-07-30 visual system: neutral hierarchy, restrained color, native-feeling controls. */
:root {
  --control-fill: #f1f1f3;
  --control-fill-hover: #e9e9ec;
  --group-fill: #f6f6f8;
  --separator: rgba(60,60,67,.13);
  --separator-strong: rgba(60,60,67,.23);
  --focus-ring: rgba(23,102,75,.22);
  --elevated-shadow: 0 14px 45px rgba(0,0,0,.12), 0 2px 7px rgba(0,0,0,.06);
}

::selection { background:rgba(23,102,75,.18); }
.icon-btn,.tool-btn {
  height:34px;
  border:1px solid var(--separator);
  border-radius:7px;
  background:rgba(255,255,255,.9);
  color:var(--ink);
  box-shadow:0 1px 2px rgba(0,0,0,.025);
  font-weight:550;
}
.icon-btn { width:34px; }
.tool-btn { padding:0 12px;gap:7px; }
.icon-btn:hover,.tool-btn:hover { border-color:var(--separator-strong);background:var(--control-fill);box-shadow:none; }
.icon-btn:active,.tool-btn:active { transform:scale(.98); }
.primary,.project-action { background:var(--moss)!important;border-color:var(--moss)!important;color:#fff!important;box-shadow:0 1px 2px rgba(0,0,0,.08)!important; }
.primary:hover,.project-action:hover { background:#0d5b42!important;border-color:#0d5b42!important; }
.field label { margin-bottom:6px;color:var(--muted);font-size:11px;font-weight:600; }
.field input,.field select,.field textarea,.search input,.filter-select,.filter-month {
  border:1px solid var(--separator);
  border-radius:7px;
  background:#fff;
  box-shadow:0 1px 1px rgba(0,0,0,.015);
}
.field input:focus,.field select:focus,.field textarea:focus,.search input:focus,.filter-select:focus,.filter-month:focus {
  border-color:rgba(23,102,75,.62);
  box-shadow:0 0 0 3px var(--focus-ring);
  outline:0;
}
.panel,.metric,.table-shell { border-color:var(--separator);box-shadow:0 1px 2px rgba(0,0,0,.025); }
.metric { background:rgba(255,255,255,.92); }
.data-table th { border-bottom-color:var(--separator);background:#f7f7f9;color:var(--muted);font-weight:600; }
.data-table td { border-bottom-color:rgba(60,60,67,.09); }
.data-table tbody tr:hover td { background:#f8f8fa; }
.data-table tr.is-selected td { background:#f1f5f2; }
.task-data-table { min-width:1180px;table-layout:fixed; }
.task-data-table th:nth-child(1) { width:300px; }
.task-data-table th:nth-child(2) { width:185px; }
.task-data-table th:nth-child(3) { width:90px; }
.task-data-table th:nth-child(4) { width:70px; }
.task-data-table th:nth-child(5) { width:75px; }
.task-data-table th:nth-child(6) { width:80px; }
.task-data-table th:nth-child(7) { width:110px; }
.task-data-table th:nth-child(8) { width:78px; }
.task-data-table th:nth-child(9) { width:190px; }
.task-data-table td:nth-child(2) { line-height:1.45;word-break:break-word; }
.task-data-table .collaborator-cell { white-space:normal;overflow-wrap:anywhere; }
.collaborator-list { display:flex;flex-wrap:wrap;align-items:center;gap:3px 5px;max-width:100%;color:var(--muted);font-size:11px;line-height:1.35; }
.collaborator-list span { max-width:100%;white-space:nowrap; }
.meeting-scope-card span { white-space:nowrap; }
.meeting-scope-card small { grid-column:2;grid-row:2;white-space:nowrap; }
.badge { font-weight:600; }
.team-section { border:1px solid var(--separator);background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.025); }
.workload-card { border-color:var(--separator);box-shadow:none;background:#fff; }

/* Link navigation: compact file-like rows with one stable reading direction. */
.navigation-toolbar {
  min-height:38px;
  padding:0;
  margin-bottom:14px;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.navigation-toolbar .search { width:min(440px,100%); }
.navigation-toolbar .search input { height:38px;background:#fff; }
.navigation-toolbar .search i,.navigation-toolbar .search>svg { top:11px; }
.navigation-toolbar>span { padding-left:2px;color:var(--soft); }
.navigation-grid { grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px; }
.navigation-card {
  min-height:112px;
  grid-template-rows:minmax(0,1fr) 30px;
  border:1px solid var(--separator);
  border-radius:8px;
  background:#fff;
  box-shadow:0 1px 2px rgba(0,0,0,.025);
}
.navigation-card:hover {
  border-color:var(--separator-strong);
  box-shadow:0 5px 16px rgba(0,0,0,.055);
  transform:translateY(-1px);
}
.navigation-card-link {
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 26px;
  grid-template-rows:18px minmax(36px,auto);
  align-items:center;
  column-gap:11px;
  row-gap:4px;
  padding:13px 12px;
}
.navigation-card-icon {
  width:38px;
  height:38px;
  grid-column:1;
  grid-row:1/3;
  border-radius:7px;
  background:#f1f1f3;
  color:#4f5054;
}
.navigation-card-icon svg { width:18px;height:18px; }
.navigation-card-link>small {
  grid-column:2;
  grid-row:1;
  align-self:end;
  overflow:hidden;
  color:var(--soft);
  font-size:9px;
  font-weight:600;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.navigation-card-link h3 {
  grid-column:2;
  grid-row:2;
  align-self:start;
  margin:1px 0 0;
  font-size:13px;
  font-weight:650;
  line-height:1.4;
}
.navigation-open {
  width:26px;
  height:26px;
  grid-column:3;
  grid-row:1/3;
  display:grid;
  place-items:center;
  align-self:center;
  border-radius:50%;
  color:var(--soft);
  font-size:0;
}
.navigation-open svg { width:14px;height:14px; }
.navigation-card-link:hover .navigation-open { background:var(--control-fill);color:var(--ink); }
.navigation-card footer { height:30px;padding:0 8px 0 61px;border-top:1px solid var(--separator);background:#fbfbfc; }
.navigation-card footer>span { font-size:9px; }
.navigation-card footer button { width:24px;height:24px; }

/* Project portfolio: state is communicated by text and a small dot, never a colored edge. */
.project-summary-strip { gap:8px;margin-bottom:10px; }
.project-summary-item {
  min-height:52px;
  border:1px solid var(--separator);
  border-left:1px solid var(--separator);
  border-radius:8px;
  background:#fff;
  color:var(--muted);
  box-shadow:0 1px 2px rgba(0,0,0,.025);
}
.project-summary-item[data-project-status="open"],
.project-summary-item[data-project-status="blocked"],
.project-summary-item[data-project-status="completed"] { border-left-color:var(--separator); }
.project-summary-item svg { color:var(--soft); }
.project-summary-item[data-project-status="blocked"] svg { color:var(--red); }
.project-summary-item[data-project-status="completed"] svg { color:var(--moss); }
.project-summary-item.active { border-color:var(--separator-strong);border-left-color:var(--separator-strong);background:var(--control-fill);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65); }
.project-filter-panel { padding:0;border:0;background:transparent;gap:8px; }
.project-primary-filter-row { gap:12px; }
.project-tabs { gap:2px;padding:3px;margin:0;border-radius:8px;background:#eaeaed; }
.project-tabs button { min-height:32px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--muted); }
.project-tabs button span { min-width:18px;background:rgba(255,255,255,.54);color:var(--muted); }
.project-tabs button.active { border:0;background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12); }
.project-tabs button.active span { background:var(--control-fill);color:var(--ink); }
.project-owner-tabs,.project-brand-tabs { gap:2px;padding-left:12px;border-left:1px solid var(--separator); }
.project-owner-tabs button,.project-brand-tabs button { height:32px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--muted); }
.project-owner-tabs button:hover,.project-brand-tabs button:hover { background:rgba(0,0,0,.035);color:var(--ink); }
.project-owner-tabs button.active,.project-brand-tabs button.active { border:0;background:var(--control-fill);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(60,60,67,.05); }
.project-owner-tabs strong,.project-brand-tabs button strong { background:rgba(0,0,0,.045);color:var(--muted); }
.project-category-hierarchy { gap:2px;padding:3px;border:0;border-radius:8px;background:#ededf0; }
.category-all { min-width:104px;border:0;border-radius:6px;background:transparent;color:var(--muted); }
.category-all.active { border:0;background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.1); }
.category-family { min-height:38px;gap:2px;padding:2px;border:0;background:transparent; }
.category-family.family-food,.category-family.family-general_merchandise,.category-family.family-other { --family-color:var(--muted);--family-line:transparent;--family-soft:transparent; }
.category-parent,.category-children button { height:30px;border:0;border-radius:6px;color:var(--muted); }
.category-parent { color:var(--ink); }
.category-parent:hover,.category-children button:hover { border:0;background:rgba(255,255,255,.55);color:var(--ink); }
.category-parent.active,.category-children button.active { border:0;background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.1); }
.project-workbench { border:1px solid var(--separator);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.035); }
.project-browser { border-right:1px solid var(--separator);background:#f3f3f5; }
.project-browser-tools { padding:12px;border-bottom:1px solid var(--separator);background:rgba(255,255,255,.35); }
.project-browser-count { padding:9px 13px 4px; }
.project-pick-list { gap:3px;padding:6px; }
.project-pick-card {
  --state-color:#8e8e93;
  padding:11px 12px;
  gap:6px;
  border:0;
  border-left:0;
  border-radius:7px;
  background:transparent;
  box-shadow:none;
}
.project-pick-card:hover { border:0;border-left:0;background:rgba(255,255,255,.68); }
.project-pick-card.active { border:0;border-left:0;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.11); }
.project-pick-card.project-state-blocked { --state-color:#ff3b30; }
.project-pick-card.project-state-active { --state-color:#0a84ff; }
.project-pick-card.project-state-completed { --state-color:#30a46c; }
.project-pick-card.project-state-paused { --state-color:#ff9f0a; }
.project-pick-card .badge { min-height:auto;padding:0;border-radius:0;background:transparent;color:var(--muted);font-size:9px;font-weight:600; }
.project-pick-card>strong { font-size:12px;font-weight:650; }
.project-pick-card>small { color:#77777d; }
.project-state-dot { width:6px;height:6px; }
.mini-progress { height:2px;background:#dcdcE1; }
.project-pick-card .mini-progress i { background:#8e8e93; }
.project-pick-card.active .mini-progress i { background:var(--moss); }
.project-pick-card.project-state-completed .mini-progress i { background:#30a46c; }
.project-task-stage { padding:22px;background:#fff; }
.selected-project-head { margin-bottom:18px; }
.selected-project-head h2 { margin:6px 0 4px;font-size:22px;font-weight:700; }
.selected-project-kicker { gap:8px; }
.selected-category-path { padding-left:8px;border-left:1px solid var(--separator);color:var(--muted); }
.project-overall-progress { margin-bottom:14px;padding:14px 16px;border:0;border-left:0;border-radius:8px;background:var(--group-fill); }
.project-overall-progress-head>span { color:var(--ink);font-size:11px; }
.project-overall-progress-head>span svg { color:var(--muted); }
.project-overall-progress>p { margin-top:8px;font-size:13px;line-height:1.6; }
.project-task-metrics { gap:0;border:1px solid var(--separator);border-radius:8px;overflow:hidden;background:#fff; }
.project-task-metrics>div { padding:12px 13px;border:0;border-right:1px solid var(--separator);border-radius:0;background:#fff; }
.project-task-metrics>div:last-child { border-right:0; }
.project-task-metrics span { font-size:10px; }
.project-task-metrics strong { margin-top:6px;font-size:20px; }
.project-task-table { border:1px solid var(--separator);border-radius:8px; }
.project-task-table-head { padding:12px 14px;border-bottom:1px solid var(--separator);background:#fff; }
.data-table tr[data-task-status] td:first-child,.workbench-task-table tr[data-task-status] td:first-child { border-left:0; }

/* Report editor: one writing surface and one quiet reference sidebar. */
.report-editor-overlay { padding:14px;background:rgba(22,22,24,.38);backdrop-filter:blur(10px) saturate(105%); }
.report-editor-screen { border:1px solid rgba(255,255,255,.48);border-radius:10px;background:#f5f5f7;box-shadow:var(--elevated-shadow); }
.report-editor-screen>header { min-height:74px;padding:12px 18px;border-bottom:1px solid var(--separator);background:rgba(255,255,255,.94); }
.report-editor-screen>header span { color:var(--muted);font-size:10px; }
.report-editor-screen>header h2 { margin:4px 0 2px;font-size:20px;font-weight:700; }
.report-editor-screen>main { grid-template-columns:minmax(0,1.42fr) minmax(340px,.58fr);gap:0;padding:0;background:#f5f5f7; }
.report-editor-main { gap:12px;padding:14px; }
.report-writing-card { padding:15px;border:0;border-radius:8px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.055); }
.report-writing-card.section-missing { border:0;box-shadow:0 0 0 1px rgba(255,59,48,.55),0 1px 3px rgba(0,0,0,.055); }
.report-writing-head { margin-bottom:11px; }
.report-writing-head>div { grid-template-columns:30px minmax(0,1fr);column-gap:8px; }
.report-writing-head>div>span { width:30px;height:28px;border-radius:0;background:transparent;color:var(--muted);font-size:10px;font-weight:650; }
.report-writing-head h3 { font-size:14px;font-weight:700; }
.report-writing-head p { color:var(--soft); }
.report-writing-head .tool-btn { height:30px;border-color:transparent;background:var(--control-fill);box-shadow:none; }
.report-entry-list { gap:6px; }
.report-entry-row { grid-template-columns:28px minmax(0,1fr) 28px;gap:7px;padding:7px;border:0;border-radius:7px;background:#f6f6f8;box-shadow:inset 0 0 0 1px rgba(60,60,67,.055); }
.report-entry-number { width:25px;height:25px;background:transparent;color:var(--soft); }
.report-entry-row textarea { min-height:45px;padding:6px 4px;font-size:12px; }
.report-entry-row:focus-within { border:0;background:#fff;box-shadow:0 0 0 3px var(--focus-ring),inset 0 0 0 1px rgba(23,102,75,.45); }
.report-entry-row.quality-pass { border:0;background:#f7faf8;box-shadow:inset 0 0 0 1px rgba(48,164,108,.26); }
.report-entry-row.quality-fail { border:0;background:#fff8f7;box-shadow:inset 0 0 0 1px rgba(255,59,48,.24); }
.report-reference-pane { border:0;border-left:1px solid var(--separator);border-radius:0;background:#f7f7f9; }
.report-reference-head { min-height:74px;padding:11px 13px;border-bottom:1px solid var(--separator);background:#f7f7f9; }
.report-reference-head h3 { color:var(--ink);font-size:13px; }
.report-reference-head h3 svg { color:#5856d6; }
.report-reference-head p { color:var(--soft); }
.report-reference-head .tool-btn { border-color:var(--separator);background:#fff; }
.report-reference-pane>div:last-child { padding:12px; }
.report-reference-notice,.report-reference-notice.is-model { padding:10px;border:0;border-radius:8px;background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.05); }
.report-reference-notice>svg { color:#5856d6; }
.report-reference-notice.is-model span,.report-reference-notice span { color:var(--muted); }
.report-reference-summary { margin:11px 2px;color:var(--muted); }
.report-ai-generated { gap:8px;margin:10px 0;padding:0;border:0;border-radius:0;background:transparent; }
.report-ai-generated-title,.report-fact-title { padding:0 2px; }
.report-ai-generated-title strong,.report-fact-title strong { color:var(--ink);font-size:11px; }
.report-ai-section { padding:11px 12px;border:1px solid var(--separator);border-left:1px solid var(--separator);border-radius:8px;background:#fff; }
.report-ai-section.type-achievement,.report-ai-section.type-plan,.report-ai-section.type-issue { border-left-color:var(--separator); }
.report-ai-section h4 { justify-content:flex-start;gap:7px;font-size:10px; }
.report-ai-section h4:before { content:"";width:6px;height:6px;flex:none;border-radius:50%;background:#0a84ff; }
.report-ai-section.type-achievement h4:before { background:#30a46c; }
.report-ai-section.type-issue h4:before { background:#ff453a; }
.report-ai-section h4 span { margin-left:auto; }
.report-ai-section ol { gap:8px;padding-left:20px; }
.report-ai-section li { line-height:1.55; }
.report-ai-section li small { color:var(--soft); }
.report-fact-title { margin:14px 2px 8px;padding-top:11px;border-top:1px solid var(--separator); }
.report-reference-signals { gap:6px; }
.report-reference-signal { padding:10px;border:1px solid var(--separator);border-left:1px solid var(--separator);border-radius:8px;background:#fff; }
.report-reference-signal.type-achievement,.report-reference-signal.type-plan,.report-reference-signal.type-issue { border-left-color:var(--separator); }
.report-reference-signal>span,.report-reference-signal.type-achievement>span,.report-reference-signal.type-issue>span { color:var(--muted); }
.report-reference-signal em { border-top:1px solid var(--separator); }
.report-editor-screen>footer { min-height:62px;padding:10px 14px;border-top:1px solid var(--separator);background:rgba(255,255,255,.94);backdrop-filter:blur(18px); }
.report-calendar-note svg { color:var(--muted); }
.smart-progress-box { border:0;background:var(--group-fill);box-shadow:inset 0 0 0 1px rgba(60,60,67,.06); }
.smart-progress-box h3 { color:var(--ink); }

@media (max-width:980px) {
  .report-editor-screen>main { display:block;overflow:auto; }
  .report-editor-main { padding:10px; }
  .report-reference-pane { min-height:420px;margin:0 10px 10px;border:1px solid var(--separator);border-radius:8px; }
}

@media (max-width:720px) {
  .tool-btn { padding:0 10px; }
  .topbar h1 { white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
  .task-data-table { min-width:0;table-layout:auto; }
  .navigation-toolbar { display:flex;align-items:center;flex-wrap:nowrap; }
  .navigation-toolbar .search { width:auto;min-width:0;flex:1;flex-basis:auto; }
  .navigation-grid { grid-template-columns:1fr;gap:8px; }
  .navigation-card { min-height:108px; }
  .navigation-card-link { grid-template-columns:36px minmax(0,1fr) 26px;padding:12px;column-gap:10px; }
  .navigation-card-icon { width:36px;height:36px; }
  .navigation-card footer { padding-left:58px; }
  .project-summary-item { min-width:128px; }
  .project-filter-panel { padding:0; }
  .project-primary-filter-row,
  .project-category-hierarchy { min-width:0;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain; }
  .project-primary-filter-row>.project-tabs,
  .project-primary-filter-row>.project-owner-tabs,
  .project-primary-filter-row>.project-brand-tabs { flex:none; }
  .project-category-hierarchy>.category-all,
  .project-category-hierarchy>.category-family { flex:none; }
  .project-workbench { border:0;box-shadow:none; }
  .project-browser { border:1px solid var(--separator);border-radius:8px;background:#f3f3f5; }
  .project-pick-card { min-width:218px;border:0; }
  .project-task-stage { border:1px solid var(--separator);border-radius:8px; }
  .project-task-metrics { grid-template-columns:repeat(2,1fr); }
  .project-task-metrics>div { border-right:1px solid var(--separator);border-bottom:1px solid var(--separator); }
  .report-editor-overlay { padding:0;backdrop-filter:none; }
  .report-editor-screen { border:0;border-radius:0; }
  .report-editor-screen>main { padding:0; }
  .report-writing-card { padding:11px; }
  .report-reference-pane { margin:0 8px 8px; }
  .report-editor-screen>footer .tool-btn { flex:0 0 auto;padding:0 7px;font-size:10px;white-space:nowrap; }
}

/* Settings: one explicit temporary permission and flat, grouped custom fields. */
.settings-access-panel,.settings-fields-panel { grid-column:1/-1; }
.settings-access-content { min-height:78px;display:grid;grid-template-columns:38px minmax(0,1fr) auto 46px;align-items:center;gap:13px;padding:13px 15px; }
.settings-access-icon { width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:#f1f1f3;color:#55565a; }
.settings-access-icon svg { width:18px;height:18px; }
.settings-access-content h3 { margin:0;font-size:13px; }
.settings-access-content p { margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5; }
.settings-access-state { color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap; }
.settings-access-state.is-on { color:var(--moss); }
.settings-switch { width:46px;height:26px;position:relative;padding:0;border:0;border-radius:13px;background:#d4d4d8;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06); }
.settings-switch>span { width:22px;height:22px;position:absolute;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.22);transition:transform .18s ease; }
.settings-switch.is-on { background:var(--moss); }
.settings-switch.is-on>span { transform:translateX(20px); }
.settings-switch:focus-visible { outline:3px solid var(--focus-ring);outline-offset:2px; }
.settings-fields-panel .panel-head { min-height:52px; }
.settings-field-groups { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--separator); }
.settings-field-group { min-width:0; }
.settings-field-group+ .settings-field-group { border-left:1px solid var(--separator); }
.settings-field-group>header { min-height:48px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:9px 12px;background:#f7f7f8; }
.settings-field-group>header>svg { width:28px;height:28px;padding:6px;border-radius:7px;background:#fff;color:var(--muted);box-shadow:inset 0 0 0 1px var(--separator); }
.settings-field-group>header strong,.settings-field-group>header small { display:block; }
.settings-field-group>header strong { font-size:11px; }
.settings-field-group>header small { margin-top:2px;color:var(--soft);font-size:8px; }
.settings-field-list { min-height:58px; }
.settings-field-row { min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 13px;border-top:1px solid #ededf0; }
.settings-field-row:first-child { border-top:0; }
.settings-field-row>div { min-width:0; }
.settings-field-row strong,.settings-field-row small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.settings-field-row strong { font-size:11px;font-weight:650; }
.settings-field-row small { margin-top:3px;color:var(--muted);font-size:9px; }
.settings-field-status { padding:3px 6px;border-radius:5px;background:#f0f0f2;color:var(--muted);font-size:8px;white-space:nowrap; }
.settings-field-status.is-active { background:var(--moss-soft);color:var(--moss); }
@media (max-width:720px) {
  .settings-access-content { grid-template-columns:34px minmax(0,1fr) auto;gap:10px;padding:12px; }
  .settings-access-icon { width:34px;height:34px; }
  .settings-access-state { grid-column:2; }
  .settings-switch { grid-column:3;grid-row:1/3; }
  .settings-field-groups { grid-template-columns:1fr; }
  .settings-field-group+ .settings-field-group { border-left:0;border-top:1px solid var(--separator); }
}

/* Workspace controls: reclaim horizontal space without changing daily reading density. */
.sidebar-toggle,.presentation-toggle,.presentation-nav-toggle { flex:none; }
.presentation-nav-toggle,.presentation-nav-menu { display:none; }
.presentation-toggle[aria-pressed="true"] { border-color:#252527;background:#252527;color:#fff; }
body.sidebar-collapsed .app-layout { grid-template-columns:minmax(0,1fr); }
body.sidebar-collapsed .sidebar { display:none; }

/* Presentation mode keeps the current view, removes editing distractions and enlarges meeting content. */
body.presentation-mode .topbar { min-height:70px;padding:12px 30px; }
body.presentation-mode .topbar-title h1 { font-size:24px; }
body.presentation-mode .topbar-title .crumb { font-size:14px; }
body.presentation-mode .sidebar-toggle { display:none; }
body.presentation-mode .presentation-nav-toggle { display:inline-grid; }
body.presentation-mode #top-mine-entry,
body.presentation-mode #notification-bell,
body.presentation-mode #quick-create { display:none!important; }
body.presentation-mode .page { max-width:none;padding:26px 32px; }
.presentation-nav-menu.is-open { width:410px;max-height:calc(100vh - 92px);position:absolute;top:calc(100% + 8px);right:30px;z-index:18;display:block;overflow:auto;padding:8px;border:1px solid rgba(60,60,67,.16);border-radius:9px;background:rgba(255,255,255,.97);box-shadow:0 18px 55px rgba(0,0,0,.18);backdrop-filter:blur(24px) saturate(140%); }
.presentation-nav-menu section+section { margin-top:7px;padding-top:7px;border-top:1px solid var(--separator); }
.presentation-nav-menu section>span { display:block;padding:4px 7px 6px;color:var(--soft);font-size:9px;font-weight:700; }
.presentation-nav-menu section>div { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px; }
.presentation-nav-item { min-width:0;height:39px;display:grid;grid-template-columns:19px minmax(0,1fr) 13px;align-items:center;gap:7px;padding:0 9px;border:0;border-radius:7px;background:transparent;color:var(--ink);text-align:left; }
.presentation-nav-item:hover { background:#f1f1f3; }
.presentation-nav-item.active { background:var(--moss-soft);color:var(--moss); }
.presentation-nav-item>svg { width:16px;height:16px;color:var(--muted); }
.presentation-nav-item>svg:last-child { width:12px;height:12px;color:var(--soft); }
.presentation-nav-item.active>svg { color:var(--moss); }
.presentation-nav-item strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650; }

body.presentation-mode[data-route="dashboard"] .meeting-scope-grid { gap:14px; }
body.presentation-mode[data-route="dashboard"] .meeting-scope-card { min-height:90px;grid-template-columns:38px minmax(0,1fr) auto;padding:14px 16px; }
body.presentation-mode[data-route="dashboard"] .meeting-scope-card>i { width:36px;height:36px;padding:7px; }
body.presentation-mode[data-route="dashboard"] .meeting-scope-card span { font-size:17px; }
body.presentation-mode[data-route="dashboard"] .meeting-scope-card strong { font-size:32px; }
body.presentation-mode[data-route="dashboard"] .meeting-scope-card small { font-size:13px; }
body.presentation-mode[data-route="dashboard"] .metric { min-height:112px;padding:18px; }
body.presentation-mode[data-route="dashboard"] .metric-label { font-size:15px; }
body.presentation-mode[data-route="dashboard"] .metric strong { margin-top:13px;font-size:34px; }
body.presentation-mode[data-route="dashboard"] .panel-head h3,
body.presentation-mode[data-route="dashboard"] .section-head h3 { font-size:18px; }
body.presentation-mode[data-route="dashboard"] .panel-head span,
body.presentation-mode[data-route="dashboard"] .section-head span { font-size:13px; }
body.presentation-mode[data-route="dashboard"] .signal-title { font-size:15px; }
body.presentation-mode[data-route="dashboard"] .signal-meta,
body.presentation-mode[data-route="dashboard"] .signal-date { font-size:12px; }
body.presentation-mode[data-route="dashboard"] .data-table { font-size:14px; }
body.presentation-mode[data-route="dashboard"] .data-table th { font-size:12px; }

body.presentation-mode[data-route="projects"] .project-summary-item { min-height:66px;padding:10px 15px;font-size:14px; }
body.presentation-mode[data-route="projects"] .project-summary-item strong { font-size:26px; }
body.presentation-mode[data-route="projects"] .project-tabs button,
body.presentation-mode[data-route="projects"] .project-owner-tabs button,
body.presentation-mode[data-route="projects"] .project-brand-tabs button,
body.presentation-mode[data-route="projects"] .category-parent,
body.presentation-mode[data-route="projects"] .category-children button { min-height:38px;font-size:13px; }
body.presentation-mode[data-route="projects"] .project-workbench { grid-template-columns:330px minmax(0,1fr); }
body.presentation-mode[data-route="projects"] .project-pick-card>strong { font-size:14px; }
body.presentation-mode[data-route="projects"] .project-pick-card>small,
body.presentation-mode[data-route="projects"] .project-pick-top { font-size:12px; }
body.presentation-mode[data-route="projects"] .selected-project-head h2 { font-size:28px; }
body.presentation-mode[data-route="projects"] .selected-project-head p,
body.presentation-mode[data-route="projects"] .selected-project-kicker { font-size:13px; }
body.presentation-mode[data-route="projects"] .project-overall-progress-head>span { font-size:14px; }
body.presentation-mode[data-route="projects"] .project-overall-progress>p { font-size:17px;line-height:1.65; }
body.presentation-mode[data-route="projects"] .project-task-metrics span { font-size:13px; }
body.presentation-mode[data-route="projects"] .project-task-metrics strong { font-size:28px; }
body.presentation-mode[data-route="projects"] .project-task-table-head h3 { font-size:17px; }
body.presentation-mode[data-route="projects"] .project-task-table-head p,
body.presentation-mode[data-route="projects"] .project-task-table-head>span { font-size:12px; }
body.presentation-mode[data-route="projects"] .workbench-task-table { font-size:14px; }
body.presentation-mode[data-route="projects"] .workbench-task-table th { font-size:12px; }

@media (max-width:720px) {
  .sidebar-toggle { display:none; }
  .presentation-toggle,.presentation-nav-toggle,.presentation-nav-menu { display:none!important; }
  body.sidebar-collapsed .sidebar.open { display:flex; }
  body.presentation-mode .topbar { min-height:52px;padding:10px 13px; }
  body.presentation-mode .topbar-title h1 { font-size:17px; }
  body.presentation-mode .page { padding:15px 13px; }
}
