:root {
  --ink: #101b36;
  --ink-2: #182745;
  --navy: #071127;
  --paper: #f4f7fb;
  --white: #ffffff;
  --muted: #6d7890;
  --line: #dfe5ef;
  --cyan: #34d6dc;
  --cyan-dark: #0d9fa8;
  --amber: #ffbd59;
  --coral: #ff7566;
  --green: #45c58b;
  --violet: #9b8cff;
  --shadow: 0 18px 50px rgba(16, 27, 54, .12);
  --radius: 14px;
}

* { box-sizing: border-box; }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: "Avenir Next", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  line-height: 1.5;
}
.auth-pending .app-shell { visibility:hidden; }
.auth-gate { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:24px; color:#f4f8ff; background:
  radial-gradient(circle at 20% 18%,rgba(52,214,220,.13),transparent 28%),
  radial-gradient(circle at 78% 74%,rgba(155,140,255,.11),transparent 30%),
  #071127; }
.auth-gate[hidden] { display:none; }
.auth-card { position:relative; width:min(430px,100%); padding:42px; overflow:hidden; border:1px solid rgba(255,255,255,.11); border-radius:22px; background:rgba(15,29,56,.92); box-shadow:0 32px 90px rgba(0,0,0,.35); }
.auth-card::after { content:""; position:absolute; width:210px; height:210px; right:-125px; top:-125px; border:1px solid rgba(52,214,220,.22); border-radius:50%; box-shadow:0 0 0 28px rgba(52,214,220,.025),0 0 0 56px rgba(52,214,220,.018); }
.auth-card > p:first-of-type { margin:22px 0 7px; color:var(--cyan); font:800 9px/1 monospace; letter-spacing:.18em; }
.auth-card h1 { margin:0; font-size:31px; letter-spacing:-.04em; }
.auth-copy { margin:15px 0 25px; color:#9babc4; font-size:13px; line-height:1.8; }
.auth-card small { display:block; min-height:18px; margin-top:14px; color:#7f91ad; font-size:10px; }
.auth-orbit { position:relative; display:block; width:46px; height:46px; border:1px solid rgba(52,214,220,.35); border-radius:50%; }
.auth-orbit::before,.auth-orbit::after { content:""; position:absolute; inset:8px; border:1px solid rgba(52,214,220,.2); border-radius:50%; transform:rotate(55deg) scaleX(1.7); }
.auth-orbit::after { transform:rotate(-55deg) scaleX(1.7); }
.auth-orbit i { position:absolute; width:5px; height:5px; border-radius:50%; background:var(--cyan); box-shadow:0 0 12px var(--cyan); }
.auth-orbit i:nth-child(1){left:20px;top:-3px}.auth-orbit i:nth-child(2){right:-2px;top:25px}.auth-orbit i:nth-child(3){left:2px;bottom:3px}
.google-signin { min-height:44px; }
.logout-button { color:#91a0ba; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgba(52, 214, 220, .38); outline-offset: 2px; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 238px minmax(0, 1fr); }
.sidebar {
  position: sticky; top: 0; height: 100vh; overflow: auto; padding: 28px 18px 22px;
  color: #dce5f6; background:
    radial-gradient(circle at 22% 7%, rgba(52,214,220,.16) 0 2px, transparent 3px),
    radial-gradient(circle at 76% 16%, rgba(255,189,89,.18) 0 1px, transparent 2px),
    linear-gradient(160deg, #0b1934, var(--navy) 74%);
  border-right: 1px solid rgba(255,255,255,.07); z-index: 20;
}
.brand { display: flex; align-items: center; gap: 12px; color: #fff; margin: 0 8px 9px; }
.project-identity { display:block; min-width:0; flex:1; }
.project-identity select { display:block; width:100%; padding:0 20px 0 0; border:0; outline:0; color:#fff; background:transparent; font-size:20px; font-weight:800; letter-spacing:.01em; cursor:pointer; appearance:auto; }
.project-identity select option { color:var(--ink); background:#fff; font-size:14px; }
.brand small { display: block; margin-top: 5px; color: #8ea0bf; font: 700 9px/1 "SFMono-Regular", Consolas, monospace; letter-spacing: .18em; }
.brand-mark { position: relative; width: 34px; height: 34px; display: block; transform: rotate(-8deg); }
.brand-mark i { position: absolute; width: 7px; height: 7px; background: var(--cyan); clip-path: polygon(50% 0,61% 37%,100% 50%,61% 63%,50% 100%,39% 63%,0 50%,39% 37%); }
.brand-mark i:nth-child(1) { left: 13px; top: 0; }.brand-mark i:nth-child(2) { right: 1px; top: 11px; }.brand-mark i:nth-child(3) { right: 6px; bottom: 0; }.brand-mark i:nth-child(4) { left: 3px; bottom: 1px; }.brand-mark i:nth-child(5) { left: 0; top: 9px; }
.project-actions { display:flex; gap:5px; margin:0 8px 27px; }
.new-project-button { flex:1; padding:8px 11px; color:#9cadc9; background:transparent; border:1px dashed rgba(255,255,255,.16); border-radius:8px; text-align:left; font-size:11px; }
.new-project-button:hover { color:#fff; border-color:rgba(52,214,220,.5); background:rgba(52,214,220,.06); }
.new-project-button span { color:var(--cyan); font-size:14px; margin-right:5px; }
.remove-project-button { width:32px; border:1px solid rgba(255,255,255,.11); border-radius:8px; color:#8797b1; background:transparent; }
.remove-project-button:hover { color:#ff9b91; border-color:rgba(255,117,102,.35); background:rgba(255,117,102,.07); }
.main-nav { display: grid; gap: 5px; }
.nav-item, .filter-link { width: 100%; border: 0; color: #9eacc5; background: transparent; display: flex; align-items: center; gap: 11px; text-align: left; border-radius: 9px; }
.nav-item { padding: 11px 13px; font-weight: 700; }
.nav-item span { font: 18px/1 monospace; }
.nav-item:hover, .nav-item.active { color: #fff; background: rgba(255,255,255,.08); }
.nav-item-link { width: 100%; box-sizing: border-box; border: 0; color: #9eacc5; background: transparent; display: flex; align-items: center; gap: 11px; text-align: left; border-radius: 9px; padding: 11px 13px; font-weight: 700; text-decoration: none; }
.nav-item-link span { font: 18px/1 monospace; }
.nav-item-link:hover { color: #fff; background: rgba(255,255,255,.08); }
.sidebar-section { margin-top: 34px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.09); }
.sidebar-label { margin: 0 12px 10px; color: #647491; font: 700 10px/1 monospace; letter-spacing: .16em; text-transform: uppercase; }
.filter-link { padding: 8px 12px; font-size: 13px; }
.filter-link:hover, .filter-link.active { color: #fff; }
.filter-link b { margin-left: auto; color: #71819c; font: 600 11px monospace; }
.filter-dot { width: 7px; height: 7px; border-radius: 50%; background: #71819c; box-shadow: 0 0 0 3px rgba(113,129,156,.1); }
.filter-dot.overdue { background: var(--coral); }.filter-dot.unassigned { background: var(--amber); }.filter-dot.done { background: var(--green); }
.sidebar-bottom { position: absolute; left: 18px; right: 18px; bottom: 20px; display: grid; gap: 7px; }
.ghost-button { border: 1px solid rgba(255,255,255,.13); color: #d7e0f0; background: rgba(255,255,255,.04); border-radius: 8px; padding: 9px; font-size: 12px; }
.ghost-button:hover { background: rgba(255,255,255,.1); }
.sidebar-bottom p { color: #667793; font-size: 9px; margin: 5px 2px 0; }

.workspace { min-width: 0; padding: 0 36px 50px; }
.topbar { min-height: 110px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.heading p { margin: 0 0 5px; color: var(--cyan-dark); font: 800 10px/1 monospace; letter-spacing: .15em; }
.heading h1 { margin: 0; font-size: clamp(24px, 2.4vw, 35px); line-height: 1.1; letter-spacing: -.04em; }
.top-actions { display: flex; align-items: center; gap: 10px; }
.search-box { height: 42px; min-width: 270px; display: flex; align-items: center; gap: 8px; padding: 0 11px; background: #fff; border: 1px solid var(--line); border-radius: 10px; }
.search-box input { width: 100%; border: 0; outline: 0; color: var(--ink); background: transparent; }
.search-box kbd { color: #8994a8; background: #f1f4f8; border: 1px solid #e4e8ef; border-radius: 5px; padding: 2px 6px; font-size: 10px; }
.primary-button, .secondary-button, .danger-button, .icon-button { border-radius: 9px; border: 0; font-weight: 750; }
.primary-button { min-height: 42px; padding: 0 17px; color: #071127; background: var(--cyan); box-shadow: 0 7px 18px rgba(52,214,220,.22); }
.primary-button:hover { background: #64e2e5; transform: translateY(-1px); }
.primary-button span { font-size: 17px; margin-right: 4px; }
.mobile-menu { display: none; border: 0; background: transparent; font-size: 22px; }

.mission-strip { position: relative; overflow: hidden; min-height: 104px; display: grid; grid-template-columns: minmax(220px,1.25fr) minmax(180px,.85fr) minmax(280px,1fr); align-items: center; gap: 28px; padding: 22px 26px; color: #edf5ff; background: linear-gradient(103deg, #122344, #0b1730); border-radius: 16px; box-shadow: 0 15px 34px rgba(7,17,39,.17); }
.mission-strip::after { content: ""; position: absolute; width: 240px; height: 240px; right: 28%; top: -170px; border: 1px solid rgba(52,214,220,.19); border-radius: 50%; box-shadow: 0 0 0 34px rgba(52,214,220,.025), 0 0 0 68px rgba(52,214,220,.018); pointer-events:none; }
.mission-copy { display: flex; align-items: center; gap: 13px; min-width: 0; }
.mission-copy div { min-width: 0; }.mission-copy small { display:block; color: #8292ad; font: 700 9px monospace; letter-spacing: .17em; }.mission-copy strong { display:block; margin-top:5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:14px; }
.live-dot { width: 9px; height: 9px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 7px rgba(52,214,220,.1), 0 0 18px var(--cyan); animation:pulse 2.4s infinite; }
.progress-rail p { margin:7px 0 0; color:#8292ad; font-size:10px; text-align:right; }.progress-rail p strong { color:#fff; }
.progress-track { height:6px; background:#243450; border-radius:10px; overflow:hidden; }.progress-track span { display:block; width:0; height:100%; background:linear-gradient(90deg,var(--cyan),#7df0cb); border-radius:inherit; transition:width .5s ease; }
.mini-metrics { display:grid; grid-template-columns:repeat(3,1fr); border-left:1px solid rgba(255,255,255,.1); }
.mini-metrics div { padding:2px 15px; border-right:1px solid rgba(255,255,255,.1); }.mini-metrics div:last-child { border-right:0; }.mini-metrics span { display:block; font:700 22px/1 "Avenir Next",sans-serif; }.mini-metrics small { display:block; margin-top:7px; color:#8292ad; font-size:10px; }

.toolbar { min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.view-title { display:flex; align-items:baseline; gap:10px; }.view-title h2 { margin:0; font-size:18px; letter-spacing:-.02em; }.view-title span { color:var(--muted); font-size:11px; }
.filter-controls { display:flex; gap:8px; }.filter-controls select { max-width:180px; border:1px solid var(--line); background:#fff; color:var(--ink); border-radius:8px; padding:8px 32px 8px 10px; font-size:12px; }.icon-button { width:35px; color:var(--muted); background:#fff; border:1px solid var(--line); }.tree-collapse-button { padding:8px 11px; border:1px solid #cdd7e5; border-radius:8px; color:#52627d; background:#fff; font-size:11px; font-weight:750; }.tree-collapse-button:hover { color:var(--ink); border-color:#aebdd0; }

.board { display:grid; grid-template-columns:repeat(4,minmax(230px,1fr)); gap:14px; align-items:start; overflow-x:auto; padding-bottom:15px; }
.column { min-width:230px; background:#eaf0f6; border:1px solid #e0e7f0; border-radius:13px; padding:10px; }
.column-head { display:flex; align-items:center; justify-content:space-between; padding:4px 5px 12px; }
.column-title { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:800; }.status-mark { width:8px; height:8px; border-radius:50%; }.status-count { color:#738098; background:rgba(255,255,255,.65); border-radius:20px; padding:2px 7px; font:700 10px monospace; }
.task-stack { display:grid; gap:8px; min-height:60px; }
.task-card { position:relative; border:1px solid #e1e6ee; background:#fff; border-radius:10px; padding:13px 13px 11px; box-shadow:0 3px 10px rgba(16,27,54,.045); transition:transform .18s ease,box-shadow .18s ease; cursor:pointer; }
.task-card:hover { transform:translateY(-2px); box-shadow:0 10px 25px rgba(16,27,54,.1); }
.task-card.is-overdue { border-left:3px solid var(--coral); }
.task-card h3 { margin:0 0 12px; font-size:13px; line-height:1.55; letter-spacing:-.01em; }
.board-card-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.board-tree-toggle { width:25px; height:25px; display:grid; place-items:center; border:1px solid #d9e2ec; border-radius:7px; color:#52627b; background:#f5f8fb; font-weight:800; }
.board-tree-toggle:hover { color:#071127; background:#e9f7f8; border-color:#bce8ea; }
.subtask-progress { height:4px; overflow:hidden; margin:2px 0 6px; background:#edf1f6; border-radius:10px; }
.subtask-progress span { display:block; height:100%; background:linear-gradient(90deg,var(--cyan),var(--green)); }
.subtask-summary { margin:0 0 10px; color:#7d899d; font-size:9px; font-weight:700; }
.board-children { display:grid; gap:3px; margin:12px -5px -4px; padding-top:9px; border-top:1px solid #edf1f5; }
.board-child-row { width:100%; min-width:0; display:grid; grid-template-columns:15px minmax(0,1fr) auto; align-items:center; gap:4px; padding:7px 6px; border:0; border-radius:7px; color:#45536d; background:transparent; text-align:left; font-size:10px; }
.board-child-row:hover { background:#f0f5f8; }
.board-child-row.depth-2 { padding-left:20px; color:#66738a; }
.board-child-row > span:nth-child(2) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.board-child-row small { font-size:8px; font-weight:800; }
.board-branch { color:#9aa7b9; font-family:monospace; }
.task-meta { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:10px; }
.task-meta .assignee-avatar { margin-left:auto; width:24px; height:24px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--ink-2); font-weight:800; }
.tag { display:inline-block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#60708b; background:#eff3f8; border-radius:5px; padding:3px 6px; font-size:9px; }
.due.overdue { color:#d84f43; font-weight:700; }.empty-column { padding:18px 8px; color:#8994a7; border:1px dashed #cbd5e2; border-radius:9px; text-align:center; font-size:11px; }

.list-view { background:#fff; border:1px solid var(--line); border-radius:13px; overflow:hidden; }
.list-head,.list-row { display:grid; grid-template-columns:minmax(280px,2fr) 110px 140px 120px 120px; align-items:center; gap:10px; padding:11px 16px; }
.list-head { color:#7d889c; background:#f7f9fc; border-bottom:1px solid var(--line); font:700 9px monospace; letter-spacing:.09em; }
.list-row { min-height:58px; border-bottom:1px solid #edf0f5; cursor:pointer; font-size:12px; }.list-row:last-child { border-bottom:0; }.list-row:hover { background:#f8fbfd; }.list-row strong { font-size:12px; }.status-pill { width:max-content; border-radius:20px; padding:4px 8px; font-size:9px; font-weight:800; }
.list-title-cell { min-width:0; display:flex; align-items:center; gap:9px; }
.list-title-cell > div { min-width:0; }
.list-title-cell strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.list-title-cell small { display:block; margin-top:3px; color:#8995a8; font-size:8px; font-weight:700; }
.list-tree-toggle { flex:0 0 auto; width:25px; height:25px; display:grid; place-items:center; border:1px solid #d6e0eb; border-radius:7px; color:#52627b; background:#f5f8fb; font-weight:800; }
.list-tree-toggle:hover { color:#071127; background:#e9f7f8; border-color:#bce8ea; }
.list-toggle-spacer { flex:0 0 auto; width:25px; }
.list-child-row { background:#fbfcfe; }
.list-child-row .list-title-cell { padding-left:34px; color:#53617a; }
.list-child-row.depth-2 .list-title-cell { padding-left:60px; color:#6d7890; }
.list-branch { color:#9ca8b9; font-family:monospace; }

.tree-view { display:grid; gap:12px; }
.tree-group { overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:13px; box-shadow:0 5px 18px rgba(16,27,54,.045); }
.tree-node { position:relative; }
.tree-row { min-height:62px; display:grid; grid-template-columns:30px minmax(260px,1fr) 105px 130px 90px; align-items:center; gap:12px; padding:10px 16px; border-bottom:1px solid #edf1f6; cursor:pointer; }
.tree-row:hover { background:#f8fbfd; }
.tree-row.root { min-height:70px; color:#f2f7ff; background:linear-gradient(100deg,#122344,#172b4d); border-bottom:0; }
.tree-row.root .tree-name small,.tree-row.root .tree-meta { color:#93a3bd; }
.tree-toggle { position:relative; z-index:2; width:28px; height:28px; display:grid; place-items:center; border:0; border-radius:50%; color:#53627b; background:#edf2f7; font-size:12px; transition:transform .18s ease; }
.tree-row.root .tree-toggle { color:var(--cyan); background:rgba(52,214,220,.12); }
.tree-toggle[aria-expanded="false"] { transform:rotate(-90deg); }
.tree-toggle-spacer { width:28px; height:28px; position:relative; }
.tree-toggle-spacer::after { content:""; position:absolute; left:13px; top:9px; width:5px; height:5px; border-radius:50%; background:#aeb8c8; }
.tree-name { min-width:0; }
.tree-name strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.tree-name small { display:block; margin-top:3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#8994a7; font-size:9px; }
.tree-meta { color:#6f7b91; font-size:10px; }
.tree-children { position:relative; margin-left:29px; border-left:1px solid #cfd8e5; }
.tree-children > .tree-node > .tree-row::before { content:""; position:absolute; left:-1px; top:30px; width:17px; border-top:1px solid #cfd8e5; }
.tree-children .tree-children { margin-left:31px; }
.tree-children[hidden] { display:none; }
.tree-orphans { margin-top:9px; padding:14px 16px; color:#7b879a; background:#eef2f7; border:1px dashed #cdd6e2; border-radius:11px; font-size:11px; }

.backdrop { position:fixed; inset:0; z-index:39; background:rgba(4,11,25,.38); opacity:0; visibility:hidden; transition:.2s; backdrop-filter:blur(2px); }
.backdrop.open { opacity:1; visibility:visible; }
.task-drawer { position:fixed; z-index:40; top:0; right:0; width:min(570px,100%); height:100vh; overflow:auto; padding:27px 28px; background:#fff; box-shadow:-20px 0 60px rgba(7,17,39,.2); transform:translateX(102%); transition:transform .28s ease; }
.task-drawer.open { transform:translateX(0); }.drawer-head { display:flex; justify-content:space-between; align-items:flex-start; padding-bottom:20px; border-bottom:1px solid var(--line); }.drawer-head small { color:var(--cyan-dark); font:800 9px monospace; letter-spacing:.16em; }.drawer-head h2 { margin:5px 0 0; font-size:23px; }.close-button { width:36px; height:36px; border:0; border-radius:50%; color:#79849a; background:#f1f4f8; font-size:22px; }
.field-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.field { display:grid; gap:6px; margin-top:17px; }.field span { color:#657188; font-size:10px; font-weight:800; }.field input,.field select,.field textarea { width:100%; border:1px solid var(--line); border-radius:9px; padding:10px 11px; color:var(--ink); background:#fbfcfe; outline:0; }.field textarea { resize:vertical; line-height:1.7; }.field-wide { grid-column:1/-1; }.drawer-actions { display:flex; align-items:center; gap:9px; margin-top:24px; padding-top:19px; border-top:1px solid var(--line); }.drawer-actions .primary-button { box-shadow:none; }.secondary-button,.danger-button,.subtask-button { min-height:42px; padding:0 14px; border:0; border-radius:9px; font-weight:750; }.secondary-button { color:var(--ink); background:#eef2f6; }.danger-button { color:#c8473e; background:#fff0ee; }.subtask-button { color:#087f87; background:#e7fafb; }.subtask-button:hover { background:#d4f5f7; }.action-spacer { flex:1; }
.calendar-button { min-height:42px; padding:0 14px; border:0; border-radius:9px; color:#315da8; background:#edf3ff; font-weight:750; }
.calendar-button:hover { background:#dfeaff; }
.calendar-button:disabled { cursor:wait; opacity:.58; }
.toast { position:fixed; z-index:60; left:50%; bottom:25px; transform:translate(-50%,20px); opacity:0; pointer-events:none; color:#fff; background:#13213d; border:1px solid rgba(255,255,255,.12); border-radius:9px; padding:11px 17px; box-shadow:var(--shadow); font-size:12px; transition:.2s; }.toast.show { opacity:1; transform:translate(-50%,0); }
.project-dialog { width:min(470px,calc(100% - 30px)); padding:0; border:0; border-radius:16px; color:var(--ink); background:#fff; box-shadow:0 30px 90px rgba(7,17,39,.35); }
.project-dialog::backdrop { background:rgba(4,11,25,.55); backdrop-filter:blur(4px); }
.project-dialog form { padding:30px; }
.project-dialog-mark { width:42px; height:42px; display:grid; place-items:center; color:#071127; background:var(--cyan); border-radius:12px; font-size:21px; }
.project-dialog p { margin:20px 0 5px; color:var(--cyan-dark); font:800 9px monospace; letter-spacing:.17em; }
.project-dialog h2 { margin:0 0 22px; font-size:22px; letter-spacing:-.03em; }
.project-help { display:block; margin-top:9px; color:var(--muted); font-size:10px; }
.dialog-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:25px; }
.empty-state { padding:60px 20px; text-align:center; color:var(--muted); }.empty-state strong { display:block; color:var(--ink); font-size:16px; margin-bottom:6px; }
@keyframes pulse { 50% { box-shadow:0 0 0 4px rgba(52,214,220,.05),0 0 9px var(--cyan); } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; } }
@media (max-width:1050px) { .mission-strip { grid-template-columns:1fr 1fr; }.mini-metrics { grid-column:1/-1; border-left:0; border-top:1px solid rgba(255,255,255,.1); padding-top:15px; }.board { grid-template-columns:repeat(4,270px); }.list-head,.list-row { grid-template-columns:minmax(240px,2fr) 100px 130px 105px; }.list-head>*:last-child,.list-row>*:last-child { display:none; } }
@media (max-width:760px) { .app-shell { display:block; }.sidebar { position:fixed; left:0; transform:translateX(-102%); width:250px; transition:transform .25s ease; box-shadow:15px 0 40px rgba(0,0,0,.2); }.sidebar.open { transform:translateX(0); }.workspace { padding:0 16px 35px; }.topbar { min-height:92px; gap:10px; }.mobile-menu { display:block; }.heading p { display:none; }.heading h1 { font-size:22px; }.top-actions .primary-button { width:42px; padding:0; overflow:hidden; font-size:0; }.top-actions .primary-button span { margin:0; font-size:22px; }.search-box { min-width:0; width:44px; }.search-box input,.search-box kbd { display:none; }.search-box:focus-within { position:absolute; left:16px; right:67px; z-index:3; width:auto; }.search-box:focus-within input { display:block; }.mission-strip { grid-template-columns:1fr; gap:18px; padding:20px; }.mini-metrics { grid-column:auto; }.toolbar { align-items:flex-start; padding:19px 0 14px; }.filter-controls { max-width:52%; flex-wrap:wrap; justify-content:flex-end; }.filter-controls select { max-width:145px; }.board { margin-right:-16px; }.field-grid { grid-template-columns:1fr; }.task-drawer { padding:22px 18px; }.list-head { display:none; }.list-row { grid-template-columns:1fr auto; gap:8px; }.list-row>*:nth-child(n+3) { display:none; } }
@media (max-width:760px) { .tree-row { grid-template-columns:28px minmax(0,1fr) 75px; padding:9px 11px; }.tree-row > *:nth-child(4),.tree-row > *:nth-child(5) { display:none; }.tree-children { margin-left:20px; }.tree-children .tree-children { margin-left:20px; } }
@media (max-width:520px) { .auth-card { padding:32px 24px; }.auth-card h1 { font-size:27px; } }
