Tab Size Hierarchy

Documentation for Design Patterns

Tab Size Hierarchy Guide

Session 111.2 - Typography Scale for Tab Navigation

📏 Size Hierarchy

Level 1: Main Tabs (Command Hub)

Primary navigation for major features

Property Value CSS Variable Pixels
Font Size 1rem --ux-text-md 16px
Icon Size 24px - 24px
Min Height 52px - 52px
Padding 1rem 2rem --ux-spacing-md --ux-spacing-xl 16px 32px
Font Weight 600 - Semi-bold
Border Width 2px - 2px
Border Radius 12px --ux-radius-lg 12px

Visual Characteristics:


Level 2: Sub-Tabs (Observatory, Skill Studio)

Secondary navigation within main features

Property Value CSS Variable Pixels
Font Size 0.875rem --ux-text-sm 14px
Icon Size 20px - 20px
Min Height 44px - 44px
Padding 0.75rem 1.5rem --ux-spacing-sm --ux-spacing-lg 12px 24px
Font Weight 600 - Semi-bold
Border Width 2px - 2px
Border Radius 8px --ux-radius-md 8px

Visual Characteristics:


Level 3: Sub-Sub-Tabs (Cost Dashboard sub-tabs)

Tertiary navigation for detailed sections

Property Value CSS Variable Pixels
Font Size 0.75rem --ux-text-xs 12px
Icon Size - - No icons
Min Height 36px - 36px
Padding 0.75rem 1rem --ux-spacing-sm --ux-spacing-md 12px 16px
Font Weight 600 - Semi-bold
Border Width 1px - 1px (thinner)
Border Radius 8px --ux-radius-md 8px

Visual Characteristics:


🎨 Visual Weight Progression

Main Tabs (Level 1)
├─ 16px text + 24px icons = Strong presence
├─ 52px height = Maximum touch target
├─ 2rem horizontal padding = Wide clickable area
└─ Full shadow + 2px translateY = Strong elevation

Sub-Tabs (Level 2)
├─ 14px text + 20px icons = Medium presence  
├─ 44px height = Standard touch target
├─ 1.5rem horizontal padding = Moderate clickable area
└─ Medium shadow + 2px translateY = Moderate elevation

Sub-Sub-Tabs (Level 3)
├─ 12px text only = Minimal presence
├─ 36px height = Compact touch target
├─ 1rem horizontal padding = Tight clickable area
└─ Light shadow + 1px translateY = Subtle elevation

🎯 Usage Guide

When to Use Each Level

Level 1 (Main Tabs):

Level 2 (Sub-Tabs):

Level 3 (Sub-Sub-Tabs):

📐 Implementation Examples

Main Tabs (Level 1)

.main-tabs {
  // Container
  gap: var(--ux-spacing-2xs);
  padding: var(--ux-spacing-md) var(--ux-spacing-lg);
  border-bottom: 2px solid var(--ux-outline);

  .tab {
    font-size: var(--ux-text-md);    // 16px
    min-height: 52px;
    padding: var(--ux-spacing-md) var(--ux-spacing-xl);

    .icon {
      font-size: 24px;
    }
  }
}

Sub-Tabs (Level 2)

.sub-tabs {
  // Container
  gap: var(--ux-spacing-2xs);
  padding: var(--ux-spacing-sm) var(--ux-spacing-md);
  border-bottom: 2px solid var(--ux-outline);

  .tab {
    font-size: var(--ux-text-sm);    // 14px
    min-height: 44px;
    padding: var(--ux-spacing-sm) var(--ux-spacing-lg);

    .icon {
      font-size: 20px;
    }
  }
}

Sub-Sub-Tabs (Level 3)

.sub-sub-tabs {
  // Container
  gap: var(--ux-spacing-3xs);
  padding: var(--ux-spacing-xs) var(--ux-spacing-md);
  border-bottom: 1px solid var(--ux-outline);  // Thinner!

  .tab {
    font-size: var(--ux-text-xs);     // 12px
    min-height: 36px;
    padding: var(--ux-spacing-sm) var(--ux-spacing-md);
    border-width: 1px;                // Thinner borders
    
    // No icons at this level
    
    &::after {
      width: 30%;                     // Narrower indicator
      height: 2px;                    // Thinner indicator
    }
  }
}

🔍 Visual Comparison

╔═══════════════════════════════════════╗
║  MAIN TAB (16px, 52px, icons)         ║ ← Level 1
╚═══════════════════════════════════════╝
  ┌────────────────────────────────┐
  │  Sub Tab (14px, 44px, icons)   │     ← Level 2
  └────────────────────────────────┘
    ┌──────────────────────────┐
    │ Sub-Sub (12px, 36px)     │         ← Level 3
    └──────────────────────────┘

✅ Applied To

🎓 Design Rationale

Why This Hierarchy Works:

  1. Clear Visual Priority: Users immediately understand which level they're at
  2. Information Scent: Size indicates depth in navigation tree
  3. Cognitive Load: Smaller text at deeper levels = expected pattern
  4. Touch Targets: All levels meet WCAG (36px+ height)
  5. Scalability: Can add Level 4 if needed (10px, 32px)

Typography Math:


Created: Session 111.2
Status: ✅ Complete
Last Updated: 2026-02-17