Story 5.7 - Responsive Design Wireframe

Story: BAT-11 - Slot Assignment & Progressive Publishing

Last updated: January 5, 2026 Reading time: 28 minutes File size: 60.98 KB

Purpose

This wireframe documents responsive design breakpoints and layout adaptations for the slot assignment workflow across desktop, tablet, and mobile devices. Ensures optimal user experience at all screen sizes with appropriate layout changes, touch targets, and interaction patterns.

Design Principles

  1. Mobile First: Design for smallest screen first, enhance for larger screens
  2. Content Priority: Most important content visible without scrolling on all devices
  3. Touch Optimized: Larger touch targets and spacing on mobile/tablet
  4. Progressive Enhancement: Add features as screen real estate increases
  5. Performance: Optimize images, lazy load off-screen content
  6. Consistency: Same visual language and patterns across all breakpoints

Breakpoint Strategy

Breakpoint Definitions

css
/* Mobile First Approach */

/* Extra Small (Mobile Portrait) */
@media (min-width: 0px) {
  /* Base styles - mobile portrait */
  /* 320px - 599px */
}

/* Small (Mobile Landscape) */
@media (min-width: 600px) {
  /* Mobile landscape, small tablets */
  /* 600px - 767px */
}

/* Medium (Tablet Portrait) */
@media (min-width: 768px) {
  /* Tablet portrait, large phones landscape */
  /* 768px - 1023px */
}

/* Large (Tablet Landscape / Small Desktop) */
@media (min-width: 1024px) {
  /* Tablet landscape, small desktops */
  /* 1024px - 1439px */
}

/* Extra Large (Desktop) */
@media (min-width: 1440px) {
  /* Standard desktop */
  /* 1440px - 1919px */
}

/* Extra Extra Large (Large Desktop) */
@media (min-width: 1920px) {
  /* Large desktop, 1080p+ monitors */
  /* 1920px+ */
}

Material-UI Grid System

typescript
// Using Material-UI breakpoints
const theme = createTheme({
  breakpoints: {
    values: {
      xs: 0,      // Extra small devices (portrait phones)
      sm: 600,    // Small devices (landscape phones)
      md: 768,    // Medium devices (tablets)
      lg: 1024,   // Large devices (desktops)
      xl: 1440,   // Extra large devices
      xxl: 1920,  // Extra extra large devices
    },
  },
});

// Responsive grid usage
<Grid container spacing={2}>
  <Grid item xs={12} md={4} lg={3}>
    {/* Speaker Pool - Full width mobile, 1/3 tablet, 1/4 desktop */}
  </Grid>
  <Grid item xs={12} md={8} lg={6}>
    {/* Session Grid - Full width mobile, 2/3 tablet, 1/2 desktop */}
  </Grid>
  <Grid item xs={12} lg={3}>
    {/* Quick Actions - Full width mobile/tablet, 1/4 desktop */}
  </Grid>
</Grid>

1. Mobile Portrait (320px - 599px)

Layout Structure

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ═══════════════════      β”‚ ← Sticky header
β”‚ < Back to Event                     β”‚   48px height
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Assign Session Timings              β”‚ ← Page title
β”‚ BATbern 2025                        β”‚   Subtitle
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ Progress: 3 of 8 (37%)          β”‚ β”‚ ← Sticky progress bar
β”‚ β”‚ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘             β”‚ β”‚   Below header
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                     β”‚
β”‚ β”Œβ”€β”€β”€ Speakers (Collapsed) ────────┐│ ← Accordion/expandable
β”‚ β”‚ πŸ”Ά 5 unassigned                  β”‚β”‚   Tap to expand
β”‚ β”‚ [Tap to show speakers β–Ό]        β”‚β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β”‚                                     β”‚
β”‚ β”Œβ”€β”€β”€ Session Timeline ─────────────┐│ ← Primary content area
β”‚ β”‚                                  β”‚β”‚   Scrollable
β”‚ β”‚ [Today: June 10]  [Tomorrow >]   β”‚β”‚   Day selector tabs
β”‚ β”‚                                  β”‚β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚β”‚
β”‚ β”‚ β”‚ 09:00 - 10:30               β”‚ β”‚β”‚ ← Session card
β”‚ β”‚ β”‚ Keynote Opening             β”‚ β”‚β”‚   Full width
β”‚ β”‚ β”‚ Main Hall (200 seats)       β”‚ β”‚β”‚   Min height 120px
β”‚ β”‚ β”‚ βœ“ Assigned: Dr. Smith       β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Match: 🟒 92%               β”‚ β”‚β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚β”‚
β”‚ β”‚                                  β”‚β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚β”‚
β”‚ β”‚ β”‚ 11:00 - 12:30               β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Workshop 1                   β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Room A (50 seats)           β”‚ β”‚β”‚
β”‚ β”‚ β”‚ β—‹ Not assigned              β”‚ β”‚β”‚
β”‚ β”‚ β”‚ [Tap to assign]             β”‚ β”‚β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚β”‚
β”‚ β”‚                                  β”‚β”‚
β”‚ β”‚ [Load more sessions...]         β”‚β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β”‚                                     β”‚
β”‚                                     β”‚
β”‚ ═══════════════════════════════════ β”‚ ← Sticky bottom bar
β”‚ [🏠 Home] [πŸ‘₯ Speakers] [⚑ Actions]β”‚   Navigation tabs
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   56px height

Speakers Panel (Expanded State)

User taps "Tap to show speakers":

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ═══════════════════      β”‚
β”‚ < Back to Timeline                  β”‚ ← Back button returns to timeline
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Speakers (5 unassigned)             β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ [All] [●Assigned] [β—‹Unassigned]     β”‚ ← Filter chips
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                     β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ πŸ”Ά Dr. Sarah Miller             β”‚ β”‚ ← Speaker card
β”‚ β”‚ AI in Architecture              β”‚ β”‚   Full width
β”‚ β”‚ β˜€οΈ Prefers: Afternoon           β”‚ β”‚   Min height 100px
β”‚ β”‚                                 β”‚ β”‚
β”‚ β”‚ [Tap to assign]                 β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚                                     β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚ β”‚ πŸ”Ά Prof. John Chen              β”‚ β”‚
β”‚ β”‚ Sustainable Design              β”‚ β”‚
β”‚ β”‚ β˜€οΈ Prefers: Morning             β”‚ β”‚
β”‚ β”‚                                 β”‚ β”‚
β”‚ β”‚ [Tap to assign]                 β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚                                     β”‚
β”‚ ... (more speakers)                 β”‚
β”‚                                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Assignment Flow (Mobile)

Step 1: User taps [Tap to assign] on speaker card

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ═══════════════════      β”‚
β”‚ < Cancel Assignment                 β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ βœ“ Dr. Sarah Miller - SELECTED       β”‚ ← Sticky context bar
β”‚ Tap a time slot to assign           β”‚   Purple background
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                                     β”‚
β”‚ β”Œβ”€β”€β”€ Available Slots ──────────────┐│
β”‚ β”‚                                  β”‚β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚β”‚
β”‚ β”‚ β”‚ 14:00 - 15:30               β”‚ β”‚β”‚ ← Highlight match score
β”‚ β”‚ β”‚ Workshop 2                   β”‚ β”‚β”‚   Match colors visible
β”‚ β”‚ β”‚ Room B (50 seats)           β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Match: 🟒 85% Strong        β”‚ β”‚β”‚
β”‚ β”‚ β”‚ β˜€οΈ Afternoon (preferred)     β”‚ β”‚β”‚
β”‚ β”‚ β”‚                             β”‚ β”‚β”‚
β”‚ β”‚ β”‚ [Tap to assign here]        β”‚ β”‚β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚β”‚
β”‚ β”‚                                  β”‚β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚β”‚
β”‚ β”‚ β”‚ 16:00 - 17:30               β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Evening Panel                β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Main Hall (200 seats)       β”‚ β”‚β”‚
β”‚ β”‚ β”‚ Match: πŸ”΄ 35% Poor          β”‚ β”‚β”‚
β”‚ β”‚ β”‚ ⊘ Evening (avoid)            β”‚ β”‚β”‚
β”‚ β”‚ β”‚                             β”‚ β”‚β”‚
β”‚ β”‚ β”‚ [Assign anyway]             β”‚ β”‚β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚β”‚
β”‚ β”‚                                  β”‚β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Step 2: User taps [Tap to assign here]

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ βœ“ Assignment Confirmed!             β”‚ ← Success toast
β”‚ Dr. Miller β†’ Workshop 2             β”‚   Slides up from bottom
β”‚ 14:00-15:30, Room B                 β”‚   Auto-dismisses in 4s
β”‚ Match: 85%                          β”‚
β”‚                                     β”‚
β”‚ [Undo] [Continue]                   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

After confirmation:
- Automatically returns to session timeline
- Progress bar updates to 4 of 8 (50%)
- If more unassigned speakers: "4 more to go!" banner
- If all assigned: Success celebration screen

Mobile-Specific Features

css
/* Mobile optimizations */
@media (max-width: 599px) {
  /* Larger touch targets */
  button,
  a,
  .speaker-card,
  .session-card {
    min-height: 48px; /* Increased from desktop 44px */
    padding: 12px 16px;
    font-size: 16px; /* Prevent zoom on input focus */
  }

  /* Full-width components */
  .speaker-card,
  .session-card,
  .modal-dialog {
    width: 100%;
    margin: 0;
  }

  /* Stack buttons vertically */
  .button-group {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .button-group button {
    width: 100%;
  }

  /* Sticky elements */
  .page-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }

  .progress-bar-container {
    position: sticky;
    top: 48px; /* Below header */
    z-index: 99;
    background: white;
    padding: 12px 16px;
  }

  .bottom-nav {
    position: sticky;
    bottom: 0;
    z-index: 100;
    background: white;
    box-shadow: 0 -2px 4px rgba(0, 0, 0, 0.1);
  }

  /* Simplified session grid */
  .session-grid {
    /* Single column, no rooms */
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  /* Room selector instead of columns */
  .room-selector {
    display: block; /* Shown on mobile */
    margin-bottom: 16px;
  }

  /* Day navigation tabs */
  .day-selector {
    display: flex;
    overflow-x: auto;
    gap: 8px;
    padding: 8px 16px;
    background: #f5f5f5;
  }

  .day-tab {
    flex-shrink: 0;
    padding: 8px 16px;
    background: white;
    border-radius: 16px;
    white-space: nowrap;
  }

  .day-tab.active {
    background: #2196f3;
    color: white;
  }

  /* Bottom sheet modals */
  .modal-dialog {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: auto;
    max-height: 85vh;
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    transition: transform 0.3s ease;
  }

  .modal-dialog.visible {
    transform: translateY(0);
  }

  /* Swipe handle */
  .modal-dialog::before {
    content: "";
    display: block;
    width: 40px;
    height: 4px;
    background: #bdbdbd;
    border-radius: 2px;
    margin: 12px auto;
  }

  /* Hide desktop-only features */
  .quick-actions-panel {
    display: none; /* Accessed via bottom nav */
  }

  .breadcrumb-nav {
    display: none; /* Back button instead */
  }

  /* Simplified typography */
  h1 {
    font-size: 24px;
    line-height: 32px;
  }

  h2 {
    font-size: 20px;
    line-height: 28px;
  }

  p,
  .body-text {
    font-size: 16px;
    line-height: 24px;
  }

  /* Reduce spacing */
  .container {
    padding: 12px 16px;
  }

  section {
    margin-bottom: 24px;
  }
}

Bottom Navigation

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β”Œβ”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β” β”‚ ← 4 tabs
β”‚ β”‚ 🏠  β”‚  β”‚ πŸ‘₯  β”‚  β”‚ πŸ“…  β”‚  β”‚ ⚑  β”‚ β”‚   Min height 56px
β”‚ β”‚Home β”‚  β”‚Speakβ”‚  β”‚Time β”‚  β”‚Acts β”‚ β”‚   Each tab 25% width
β”‚ β””β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”˜ β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Tabs:
1. Home: Return to event overview
2. Speakers: View/filter speaker pool
3. Timeline: View session timeline (default)
4. Actions: Quick actions (auto-assign, clear, export)

Active tab: Blue background (#2196f3)
Inactive tabs: Gray (#757575)

2. Mobile Landscape (600px - 767px)

Layout Structure

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ════════════════════════════════                   β”‚ ← Sticky
β”‚ < Back to Event  |  Assign Session Timings - BATbern 2025     β”‚   48px
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Progress: 3 of 8 (37%)  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  πŸ”Ά 5 Remaining  β”‚ ← Sticky
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β”Œβ”€β”€β”€β”€ Speakers ────┐ β”Œβ”€β”€β”€β”€ Session Timeline ────────────────┐ β”‚
β”‚ β”‚ (Collapsible)    β”‚ β”‚                                       β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ [June 10] [June 11] [June 12]         β”‚ β”‚
β”‚ β”‚ [All] [Assigned] β”‚ β”‚                                       β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ Room: [All Rooms β–Ό]                   β”‚ β”‚
β”‚ β”‚ πŸ”Ά Dr. Miller    β”‚ β”‚                                       β”‚ β”‚
β”‚ β”‚ [Assign]         β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β”‚ 09:00 - 10:30                     β”‚ β”‚ β”‚
β”‚ β”‚ πŸ”Ά Prof. Chen    β”‚ β”‚ β”‚ Keynote Opening                   β”‚ β”‚ β”‚
β”‚ β”‚ [Assign]         β”‚ β”‚ β”‚ Main Hall β”‚ βœ“ Dr. Smith β”‚ 🟒 92% β”‚ β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
β”‚ β”‚ ... (scroll)     β”‚ β”‚                                       β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β”‚ 11:00 - 12:30                     β”‚ β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β”‚ Workshop 1                         β”‚ β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β”‚ Room A β”‚ β—‹ Not assigned β”‚ [Tap] β”‚ β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚
β”‚ β”‚                  β”‚ β”‚                                       β”‚ β”‚
β”‚ β”‚ [Collapse <]     β”‚ β”‚ ... (more sessions, scroll)           β”‚ β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚ 30% width            70% width                                 β”‚
β”‚                                                                 β”‚
β”‚ ═══════════════════════════════════════════════════════════════│
β”‚ [🏠] [πŸ‘₯ Speakers] [πŸ“… Timeline] [⚑ Actions]                   β”‚ ← Bottom nav
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Speaker Panel Collapsed State

When collapsed (user taps [Collapse <]):

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ════════════════════════════════════                β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Progress: 3 of 8 (37%)  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  πŸ”Ά 5 Remaining  β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β”Œβ” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Session Timeline (Full Width) ────────────────┐│
β”‚ β”‚β”‚ β”‚                                                          β”‚β”‚
β”‚ β”‚β”‚ β”‚ [June 10] [June 11] [June 12]    Room: [All Rooms β–Ό]    β”‚β”‚
β”‚ β”Œβ”€ β”‚                                                          β”‚β”‚
β”‚ β”‚  β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”‚β”‚
β”‚ >  β”‚ β”‚ 09:00 - 10:30        β”‚ β”‚ 11:00 - 12:30        β”‚       β”‚β”‚
β”‚ β”‚  β”‚ β”‚ Keynote              β”‚ β”‚ Workshop 1           β”‚       β”‚β”‚
β”‚ β”‚  β”‚ β”‚ βœ“ Dr. Smith | 🟒 92% β”‚ β”‚ β—‹ Not assigned       β”‚       β”‚β”‚
β”‚ └─ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜       β”‚β”‚
β”‚ β”‚β”‚ β”‚                                                          β”‚β”‚
β”‚ β”‚β”‚ β”‚ ... (more sessions in 2-column grid)                    β”‚β”‚
β”‚ β””β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β”‚  ^                                                              β”‚
β”‚  └─ Expand speakers (vertical tab)                             β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Collapsed sidebar: 40px width (just enough for expand button)
Session grid: 2-column layout for better space utilization

3. Tablet Portrait (768px - 1023px)

Layout Structure

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ═══════════════════════════════════════════════          β”‚
β”‚ Event Management > BATbern 2025 > Slot Assignment  |  < Back to Eventβ”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Assign Session Timings - BATbern 2025                              β”‚
β”‚ Progress: 3 of 8 sessions (37%)  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  πŸ”Ά 5 Remainingβ”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β”Œβ”€β”€β”€β”€β”€β”€ Speakers ──────┐ β”Œβ”€β”€β”€β”€β”€β”€ Session Timeline ──────────────┐  β”‚
β”‚ β”‚ πŸ”Ά 5 Remaining        β”‚ β”‚ Multi-Day View                        β”‚  β”‚
β”‚ β”‚ [All][●][β—‹]           β”‚ β”‚ [< June 9] [June 10] [June 11 >]      β”‚  β”‚
β”‚ β”‚                       β”‚ β”‚                                       β”‚  β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚  β”‚
β”‚ β”‚ β”‚ πŸ”Ά Dr. Sarah Millerβ”‚ β”‚ β”‚ β”‚         Room A    Room B   Main  β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ AI in Arch        β”‚ β”‚ β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚  β”‚
β”‚ β”‚ β”‚ β˜€οΈ Afternoon      β”‚ β”‚ β”‚ β”‚ 09:00   β”Œβ”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ [Assign][Prefs]   β”‚ β”‚ β”‚ β”‚         β”‚Keynoteβ”‚ β”‚       β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚ 10:30   β”‚Dr.S   β”‚ β”‚  ---  β”‚     β”‚ β”‚  β”‚
β”‚ β”‚                       β”‚ β”‚ β”‚         β”‚πŸŸ’ 92% β”‚ β”‚       β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ πŸ”Ά Prof. John Chenβ”‚ β”‚ β”‚ β”‚ 11:00   β”Œβ”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ Sustainable       β”‚ β”‚ β”‚ β”‚         β”‚Work 1 β”‚ β”‚Work 2 β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ β˜€οΈ Morning        β”‚ β”‚ β”‚ β”‚ 12:30   β”‚  ---  β”‚ β”‚  ---  β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ [Assign][Prefs]   β”‚ β”‚ β”‚ β”‚         β”‚       β”‚ β”‚       β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚ β”‚  β”‚
β”‚ β”‚                       β”‚ β”‚ β”‚ 14:00   β”Œβ”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”     β”‚ β”‚  β”‚
β”‚ β”‚ βœ“ Assigned (3):       β”‚ β”‚ β”‚         β”‚Panel  β”‚ β”‚       β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚ 15:30   β”‚Multi  β”‚ β”‚  ---  β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ βœ“ Dr. Alex Smith  β”‚ β”‚ β”‚ β”‚         β”‚πŸŸ‘ 78% β”‚ β”‚       β”‚     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ Keynote           β”‚ β”‚ β”‚ β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ 09:00-10:30       β”‚ β”‚ β”‚ β”‚ ... (scrollable)                 β”‚ β”‚  β”‚
β”‚ β”‚ β”‚ [Edit][Details]   β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚  β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚                                       β”‚  β”‚
β”‚ β”‚                       β”‚ β”‚ [Auto-Assign All] [Clear All]         β”‚  β”‚
β”‚ β”‚ ... (scroll)          β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                            β”‚
β”‚ 35% width                 65% width                                  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Session Grid (Tablet - Timeline View)

Timeline Grid with 3 rooms shown:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ June 10, 2025                                               β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚ β”‚Time β”‚ Room A (50)     β”‚ Room B (50)     β”‚ Main Hall   β”‚  β”‚
β”‚ β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚ β”‚09:00β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚             β”‚  β”‚
β”‚ β”‚     β”‚ β”‚ Keynote     β”‚ β”‚ β”‚  ---        β”‚ β”‚             β”‚  β”‚
β”‚ β”‚     β”‚ β”‚ Dr. Smith   β”‚ β”‚ β”‚ Available   β”‚ β”‚             β”‚  β”‚
β”‚ β”‚10:30β”‚ β”‚ 🟒 92%      β”‚ β”‚ β”‚             β”‚ β”‚             β”‚  β”‚
β”‚ β”‚     β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚             β”‚  β”‚
β”‚ β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚ β”‚11:00β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚             β”‚  β”‚
β”‚ β”‚     β”‚ β”‚ Workshop 1  β”‚ β”‚ β”‚ Workshop 2  β”‚ β”‚             β”‚  β”‚
β”‚ β”‚     β”‚ β”‚  ---        β”‚ β”‚ β”‚  ---        β”‚ β”‚             β”‚  β”‚
β”‚ β”‚12:30β”‚ β”‚ Available   β”‚ β”‚ β”‚ Available   β”‚ β”‚             β”‚  β”‚
β”‚ β”‚     β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚             β”‚  β”‚
β”‚ β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚
β”‚ β”‚14:00β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚                 β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚  β”‚
β”‚ β”‚     β”‚ β”‚ Panel Disc  β”‚ β”‚                 β”‚ β”‚ Closing β”‚ β”‚  β”‚
β”‚ β”‚     β”‚ β”‚ Multi       β”‚ β”‚                 β”‚ β”‚  ---    β”‚ β”‚  β”‚
β”‚ β”‚15:30β”‚ β”‚ 🟑 78%      β”‚ β”‚                 β”‚ β”‚         β”‚ β”‚  β”‚
β”‚ β”‚     β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚                 β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚  β”‚
β”‚ β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Features:
- 3 rooms visible simultaneously
- Time slots on left axis (09:00 - 20:00)
- Session blocks sized by duration
- Match scores visible on assigned sessions
- Empty slots have "Available" label
- Tap session to view details/edit
- Drag speaker from sidebar to drop zone

Drag-and-Drop (Tablet)

Tablet supports both touch and mouse:

Touch Interaction:
1. Tap speaker β†’ Enters assign mode (same as mobile)
2. Tap time slot β†’ Assigns speaker
3. Visual feedback: Purple highlight, match score overlay

Mouse Interaction:
1. Drag speaker card from sidebar
2. Drop on time slot in grid
3. Visual feedback: Drop zone highlights, match score tooltip

Hybrid (Touchpad/Stylus):
- Supports both drag-drop and tap-tap workflows
- System automatically detects input method
- No preference setting needed

4. Tablet Landscape / Small Desktop (1024px - 1439px)

Layout Structure (3-Column)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ════════════════════════════════════════════════════════           β”‚
β”‚ Event Management > BATbern 2025 > Slot Assignment      [Back to Event]        β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Assign Session Timings - BATbern 2025                                        β”‚
β”‚ Progress: 3 of 8 sessions (37%)  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  πŸ”Ά 5 Remaining       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ β”Œβ”€β”€β”€ Speakers ───┐ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ Timeline ─────────────┐ β”Œβ”€β”€ Quick Actions ──┐│
β”‚ β”‚ πŸ”Ά 5 Remaining  β”‚ β”‚ Multi-Day, Multi-Room View      β”‚ β”‚                   β”‚β”‚
β”‚ β”‚ [All][●][β—‹]     β”‚ β”‚                                 β”‚ β”‚ Session Summary   β”‚β”‚
β”‚ β”‚                 β”‚ β”‚ [< Jun 9][Jun 10][Jun 11][12 >] β”‚ β”‚ Total: 8          β”‚β”‚
β”‚ β”‚ πŸ”Ά Unassigned:  β”‚ β”‚                                 β”‚ β”‚ Assigned: 3       β”‚β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ Pending: 5        β”‚β”‚
β”‚ β”‚ β”‚Dr. S. Millerβ”‚ β”‚ β”‚ β”‚    RmA  RmB  Hall  Auditoriumβ”‚β”‚ β”‚                   β”‚β”‚
β”‚ β”‚ β”‚AI in Arch   β”‚ β”‚ β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚ β”‚ [Auto-Assign All] β”‚β”‚
β”‚ β”‚ β”‚β˜€οΈ Afternoon β”‚ β”‚ β”‚ β”‚09:00 β–“β–“β–“  ---  ---   ---    β”‚β”‚ β”‚ [Clear All]       β”‚β”‚
β”‚ β”‚ β”‚πŸŽ€πŸ“½οΈ         β”‚ β”‚ β”‚ β”‚     β–“β–“β–“                     β”‚β”‚ β”‚ [Download PDF]    β”‚β”‚
β”‚ β”‚ β”‚[Assign]     β”‚ β”‚ β”‚ β”‚10:30β–“β–“β–“                     β”‚β”‚ β”‚                   β”‚β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚11:00 β–“β–“β–“  β–“β–“β–“  ---   ---    β”‚β”‚ β”‚ Match Quality     β”‚β”‚
β”‚ β”‚                 β”‚ β”‚ β”‚     β–“β–“β–“  β–“β–“β–“               β”‚β”‚ β”‚ Avg: 85% (High)   β”‚β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚12:30β–“β–“β–“  β–“β–“β–“               β”‚β”‚ β”‚ Range: 72%-98%    β”‚β”‚
β”‚ β”‚ β”‚Prof. J. Chenβ”‚ β”‚ β”‚ β”‚14:00 β–ˆβ–ˆβ–ˆ  ---  ---   ---    β”‚β”‚ β”‚                   β”‚β”‚
β”‚ β”‚ β”‚Sustainable  β”‚ β”‚ β”‚ β”‚     β–ˆβ–ˆβ–ˆ                     β”‚β”‚ β”‚ Conflicts: 0      β”‚β”‚
β”‚ β”‚ β”‚β˜€οΈ Morning   β”‚ β”‚ β”‚ β”‚15:30β–ˆβ–ˆβ–ˆ                     β”‚β”‚ β”‚ Warnings: 1       β”‚β”‚
β”‚ β”‚ β”‚πŸ“½οΈ          β”‚ β”‚ β”‚ β”‚16:00 ---  ---  β–“β–“β–“   ---    β”‚β”‚ β”‚                   β”‚β”‚
β”‚ β”‚ β”‚[Assign]     β”‚ β”‚ β”‚ β”‚     ---  ---  β–“β–“β–“   ---    β”‚β”‚ β”‚ [View All Issues] β”‚β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚17:30---  ---  β–“β–“β–“   ---    β”‚β”‚ β”‚                   β”‚β”‚
β”‚ β”‚                 β”‚ β”‚ β”‚ ... (scroll for more times)  β”‚β”‚ β”‚ Export Options    β”‚β”‚
β”‚ β”‚ ... (scroll)    β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚ β”‚ [CSV] [PDF] [iCal]β”‚β”‚
β”‚ β”‚                 β”‚ β”‚                                 β”‚ β”‚                   β”‚β”‚
β”‚ β”‚ βœ“ Assigned (3): β”‚ β”‚ Legend:                         β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β–“β–“β–“ Assigned (green)            β”‚                      β”‚
β”‚ β”‚ β”‚βœ“ Dr. Smith  β”‚ β”‚ β”‚ β–ˆβ–ˆβ–ˆ Assigned (yellow/orange)    β”‚                      β”‚
β”‚ β”‚ β”‚Keynote      β”‚ β”‚ β”‚ --- Available (white/gray)      β”‚                      β”‚
β”‚ β”‚ β”‚09:00-10:30  β”‚ β”‚ β”‚                                 β”‚                      β”‚
β”‚ β”‚ β”‚[Edit][Info] β”‚ β”‚ β”‚ [Zoom In] [Zoom Out] [Fit All]  β”‚                      β”‚
β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                      β”‚
β”‚ β”‚                 β”‚                                                            β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                                                            β”‚
β”‚ 25% width          55% width                         20% width                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Color Key:
β–“β–“β–“ = Green (strong match 80-100%)
β–ˆβ–ˆβ–ˆ = Yellow/Orange (acceptable match 50-79%)
β–‘β–‘β–‘ = Red (poor match <50%) - shown on hover/conflict
--- = Available/empty slot

Hover States and Tooltips

When mouse hovers over assigned session:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“                   β”‚ ← Session block
β”‚ β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“β–“                   β”‚   Highlights
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         ↓
    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
    β”‚ Workshop 2: Advanced Topics         β”‚ ← Tooltip
    β”‚ 14:00 - 15:30 (1.5 hours)           β”‚   Appears on hover
    β”‚ Room B, Capacity: 50                β”‚
    β”‚                                     β”‚
    β”‚ Speaker: Dr. Sarah Miller           β”‚
    β”‚ Match Score: 🟒 85% (Strong)        β”‚
    β”‚                                     β”‚
    β”‚ Matches:                            β”‚
    β”‚ βœ“ Afternoon slot (preferred)        β”‚
    β”‚ βœ“ Projector available               β”‚
    β”‚ βœ“ Room size appropriate             β”‚
    β”‚                                     β”‚
    β”‚ Click to edit | Right-click options β”‚
    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

When dragging speaker over available slot:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ --- Available ---                   β”‚ ← Drop zone
β”‚ [Drop Dr. Miller here]              β”‚   Highlights during drag
β”‚ Match: 🟒 85% Strong                β”‚   Shows match score
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Context Menu (Right-Click)

Right-click on assigned session:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Edit Timing...                      β”‚
β”‚ View Session Details                β”‚
β”‚ View Speaker Preferences            β”‚
β”‚ ───────────────────────────────────│
β”‚ Unassign Speaker                    β”‚
β”‚ Swap with Another Session...        β”‚
β”‚ ───────────────────────────────────│
β”‚ Copy Session Link                   β”‚
β”‚ Add to Calendar                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Right-click on available slot:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Assign Speaker...                   β”‚
β”‚ Block Time Slot                     β”‚
β”‚ View Room Details                   β”‚
β”‚ ───────────────────────────────────│
β”‚ Copy Time Slot Link                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

5. Desktop (1440px - 1919px)

Layout Structure (Optimized 3-Column)

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ ═══ Header ══════════════════════════════════════════════════════════════               β”‚
β”‚ Event Management > BATbern 2025 > Slot Assignment              [Back to Event]          β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Assign Session Timings - BATbern 2025                                                  β”‚
β”‚ Progress: 3 of 8 sessions (37%)  β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘  πŸ”Ά 5 Remaining  Avg: 85% 🟒 β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ SPEAKERS         β”‚ SESSION TIMELINE                                 β”‚ QUICK ACTIONS      β”‚
β”‚ πŸ”Ά 5 Remaining   β”‚                                                  β”‚                    β”‚
β”‚                  β”‚ Week View: [< June 9-13] [June 14-18] [19-23 >] β”‚ Summary            β”‚
β”‚ [Search...]      β”‚                                                  β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
β”‚ [All][●][β—‹]      β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚ β”‚Total:       8  β”‚β”‚
β”‚                  β”‚ β”‚        Room A   Room B   Main    Aud    Lab β”‚  β”‚ β”‚Assigned:    3  β”‚β”‚
β”‚ πŸ”Ά UNASSIGNED:   β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚ β”‚Pending:     5  β”‚β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚Mon     β–“β–“β–“     ---     ---     ---    --- β”‚  β”‚ β”‚                β”‚β”‚
β”‚ β”‚Dr. S. Miller β”‚ β”‚ β”‚09:00   β–“β–“β–“     β–‘β–‘β–‘     ---     ---    --- β”‚  β”‚ β”‚Match Avg: 85%  β”‚β”‚
β”‚ β”‚AI in Arch    β”‚ β”‚ β”‚        β–“β–“β–“     β–‘β–‘β–‘     ---     ---    --- β”‚  β”‚ β”‚Conflicts:  0   β”‚β”‚
β”‚ β”‚β˜€οΈ Afternoon  β”‚ β”‚ β”‚10:30   ---     β–‘β–‘β–‘     ---     ---    --- β”‚  β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β”‚ β”‚πŸŽ€πŸ“½οΈπŸ”Š       β”‚ β”‚ β”‚11:00   β–ˆβ–ˆβ–ˆ     β–ˆβ–ˆβ–ˆ     ---     ---    --- β”‚  β”‚                    β”‚
β”‚ β”‚Match: 85%    β”‚ β”‚ β”‚        β–ˆβ–ˆβ–ˆ     β–ˆβ–ˆβ–ˆ     ---     ---    --- β”‚  β”‚ [Auto-Assign All]  β”‚
β”‚ β”‚[Assign][Pref]β”‚ β”‚ β”‚12:30   β–ˆβ–ˆβ–ˆ     β–ˆβ–ˆβ–ˆ     ---     ---    --- β”‚  β”‚ [Clear All]        β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚14:00   ---     ---     β–“β–“β–“     ---    --- β”‚  β”‚ [Download PDF]     β”‚
β”‚                  β”‚ β”‚        ---     ---     β–“β–“β–“     ---    --- β”‚  β”‚                    β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚15:30   ---     ---     β–“β–“β–“     ---    --- β”‚  β”‚ Issues             β”‚
β”‚ β”‚Prof. J. Chen β”‚ β”‚ β”‚16:00   ---     ---     ---     β–“β–“β–“    --- β”‚  β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
β”‚ β”‚Sustainable   β”‚ β”‚ β”‚        ---     ---     ---     β–“β–“β–“    --- β”‚  β”‚ β”‚βš οΈ 1 Warning    β”‚β”‚
β”‚ β”‚β˜€οΈ Morning    β”‚ β”‚ β”‚17:30   ---     ---     ---     β–“β–“β–“    --- β”‚  β”‚ β”‚                β”‚β”‚
β”‚ β”‚πŸ“½οΈπŸ”Š         β”‚ β”‚ β”‚18:00   ---     ---     ---     ---    --- β”‚  β”‚ β”‚Workshop 3:     β”‚β”‚
β”‚ β”‚Match: 92%    β”‚ β”‚ β”‚ ... (scroll down for more times/days)      β”‚  β”‚ β”‚Room too large  β”‚β”‚
β”‚ β”‚[Assign][Pref]β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚ β”‚[Review]        β”‚β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚                                                  β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β”‚                  β”‚ Zoom: [+] [-] [Fit]  View: [Day][Week][Month]    β”‚                    β”‚
β”‚ ... (3 more)     β”‚                                                  β”‚ Export             β”‚
β”‚                  β”‚ Legend: β–“β–“β–“ Strong  β–ˆβ–ˆβ–ˆ Good  β–‘β–‘β–‘ Poor  --- Open β”‚ [CSV] [PDF] [iCal] β”‚
β”‚                  β”‚                                                  β”‚ [Print Schedule]   β”‚
β”‚ βœ“ ASSIGNED (3):  β”‚ [Show Conflicts] [Show Preferences] [Show Stats]β”‚                    β”‚
β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚                                                  β”‚ Help               β”‚
β”‚ β”‚βœ“ Dr. A. Smithβ”‚ β”‚                                                  β”‚ [Keyboard Shortcutsβ”‚
β”‚ β”‚Keynote       β”‚ β”‚                                                  β”‚ [User Guide]       β”‚
β”‚ β”‚Mon 09:00     β”‚ β”‚                                                  β”‚ [Video Tutorial]   β”‚
β”‚ β”‚RmA β”‚ 🟒 92%  β”‚ β”‚                                                  β”‚                    β”‚
β”‚ β”‚[Edit][Detailsβ”‚ β”‚                                                  β”‚                    β”‚
β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚                                                  β”‚                    β”‚
β”‚ ... (2 more)     β”‚                                                  β”‚                    β”‚
β”‚                  β”‚                                                  β”‚                    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
22% width          58% width                                         20% width

Advanced Features (Desktop Only)

Week/Month View:

Month View (1440px+ only):

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ June 2025                                              [< >]     β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Mon    Tue    Wed    Thu    Fri    Sat    Sun                   β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”¬         β”‚
β”‚   1   β”‚   2   β”‚   3   β”‚   4   β”‚   5   β”‚   6   β”‚   7   β”‚         β”‚
β”‚       β”‚       β”‚       β”‚       β”‚       β”‚       β”‚       β”‚         β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€         β”‚
β”‚   8   β”‚   9   β”‚ β–  10  β”‚ β–  11  β”‚ β–  12  β”‚  13   β”‚  14   β”‚         β”‚
β”‚       β”‚       β”‚ 5evt  β”‚ 6evt  β”‚ 4evt  β”‚       β”‚       β”‚         β”‚
β”‚       β”‚       β”‚ 3asgn β”‚ 4asgn β”‚ 2asgn β”‚       β”‚       β”‚         β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€         β”‚
β”‚  15   β”‚  16   β”‚  17   β”‚  18   β”‚  19   β”‚  20   β”‚  21   β”‚         β”‚
β”‚       β”‚       β”‚       β”‚       β”‚       β”‚       β”‚       β”‚         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”˜         β”‚
                                                                   β”‚
β–  = Has events                                                     β”‚
Click day to zoom to day view                                      β”‚
Hover shows summary: "5 events, 3 assigned, 2 pending"            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Keyboard Shortcuts Panel:

Desktop supports extensive keyboard shortcuts:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Keyboard Shortcuts                                        [X]    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Navigation:                                                      β”‚
β”‚   Tab                Move to next element                        β”‚
β”‚   Shift+Tab          Move to previous element                    β”‚
β”‚   Arrow keys         Navigate grid                               β”‚
β”‚   Ctrl+Home          Jump to top                                 β”‚
β”‚   Ctrl+End           Jump to bottom                              β”‚
β”‚                                                                  β”‚
β”‚ Workflow:                                                        β”‚
β”‚   Enter              Activate/assign                             β”‚
β”‚   Escape             Cancel                                      β”‚
β”‚   Ctrl+A             Auto-assign all                             β”‚
β”‚   Ctrl+S             Save changes                                β”‚
β”‚   Ctrl+Z             Undo last action                            β”‚
β”‚   Ctrl+Y             Redo action                                 β”‚
β”‚                                                                  β”‚
β”‚ View:                                                            β”‚
β”‚   1                  Day view                                    β”‚
β”‚   2                  Week view                                   β”‚
β”‚   3                  Month view                                  β”‚
β”‚   +                  Zoom in                                     β”‚
β”‚   -                  Zoom out                                    β”‚
β”‚   0                  Reset zoom                                  β”‚
β”‚                                                                  β”‚
β”‚ Search:                                                          β”‚
β”‚   /                  Focus search                                β”‚
β”‚   Ctrl+F             Find speaker/session                        β”‚
β”‚                                                                  β”‚
β”‚ Help:                                                            β”‚
β”‚   ?                  Show this help                              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

6. Large Desktop (1920px+)

Layout Structure (4-Column Optional)

Ultra-wide displays (1920px+) can show additional panel:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Speakers β”‚ Session Timeline             β”‚ Actions   β”‚ Insights     β”‚
β”‚ (20%)    β”‚ (50%)                        β”‚ (15%)     β”‚ (15%)        β”‚
β”‚          β”‚                              β”‚           β”‚              β”‚
β”‚          β”‚ 5-6 rooms visible            β”‚           β”‚ Analytics:   β”‚
β”‚          β”‚ simultaneously               β”‚           β”‚ - Coverage   β”‚
β”‚          β”‚                              β”‚           β”‚ - Quality    β”‚
β”‚          β”‚ More vertical space          β”‚           β”‚ - Conflicts  β”‚
β”‚          β”‚ = Less scrolling             β”‚           β”‚ - Trends     β”‚
β”‚          β”‚                              β”‚           β”‚              β”‚
β”‚          β”‚ Enhanced visual              β”‚           β”‚ AI Suggest:  β”‚
β”‚          β”‚ match indicators             β”‚           β”‚ - Best slots β”‚
β”‚          β”‚                              β”‚           β”‚ - Optimize   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Insights Panel (1920px+ only):
- Real-time match quality analytics
- Session distribution charts
- Speaker preference satisfaction scores
- AI-powered assignment suggestions
- Conflict prediction
- Schedule optimization recommendations

Responsive Images and Media

Image Optimization

html
<!-- Speaker profile images - responsive -->
<picture>
  <source
    media="(min-width: 1440px)"
    srcset="/images/speakers/sarah-miller-large.webp 1x,
            /images/speakers/sarah-miller-large@2x.webp 2x"
    type="image/webp">
  <source
    media="(min-width: 768px)"
    srcset="/images/speakers/sarah-miller-medium.webp 1x,
            /images/speakers/sarah-miller-medium@2x.webp 2x"
    type="image/webp">
  <source
    srcset="/images/speakers/sarah-miller-small.webp 1x,
            /images/speakers/sarah-miller-small@2x.webp 2x"
    type="image/webp">
  <img
    src="/images/speakers/sarah-miller-medium.jpg"
    alt="Dr. Sarah Miller, AI in Architecture specialist"
    loading="lazy"
    width="80"
    height="80">
</picture>

Sizes:
- Small (mobile): 60x60px
- Medium (tablet): 80x80px
- Large (desktop): 100x100px
- @2x retina versions for all sizes

Icon Scaling

css
/* Responsive icon sizes */
.icon {
  width: 20px;
  height: 20px;
}

@media (min-width: 768px) {
  .icon {
    width: 24px;
    height: 24px;
  }
}

@media (min-width: 1440px) {
  .icon {
    width: 28px;
    height: 28px;
  }
}

/* Preference icons in speaker cards */
.preference-icon {
  font-size: 18px; /* Mobile */
}

@media (min-width: 768px) {
  .preference-icon {
    font-size: 20px; /* Tablet */
  }
}

@media (min-width: 1024px) {
  .preference-icon {
    font-size: 24px; /* Desktop */
  }
}

Performance Optimizations

Lazy Loading

typescript
// Lazy load session grid rows as user scrolls
import { useVirtualizer } from '@tanstack/react-virtual';

export const SessionGrid: React.FC<{ sessions: Session[] }> = ({ sessions }) => {
  const parentRef = useRef<HTMLDivElement>(null);

  const rowVirtualizer = useVirtualizer({
    count: sessions.length,
    getScrollElement: () => parentRef.current,
    estimateSize: () => 80, // Estimated row height
    overscan: 5, // Render 5 extra rows above/below visible area
  });

  return (
    <div ref={parentRef} className="session-grid-container">
      <div
        style={{
          height: `${rowVirtualizer.getTotalSize()}px`,
          width: '100%',
          position: 'relative',
        }}
      >
        {rowVirtualizer.getVirtualItems().map((virtualRow) => (
          <SessionRow
            key={virtualRow.key}
            session={sessions[virtualRow.index]}
            style={{
              position: 'absolute',
              top: 0,
              left: 0,
              width: '100%',
              height: `${virtualRow.size}px`,
              transform: `translateY(${virtualRow.start}px)`,
            }}
          />
        ))}
      </div>
    </div>
  );
};

Code Splitting

typescript
// Lazy load modals and heavy components
import { lazy, Suspense } from 'react';

const AutoAssignModal = lazy(() => import('@/components/AutoAssignModal'));
const ConflictModal = lazy(() => import('@/components/ConflictModal'));
const PreferencesDrawer = lazy(() => import('@/components/PreferencesDrawer'));

// Usage with suspense fallback
<Suspense fallback={<ModalSkeleton />}>
  {showAutoAssign && <AutoAssignModal />}
</Suspense>

Responsive Bundle Loading

typescript
// Load device-specific code
const isMobile = window.matchMedia('(max-width: 767px)').matches;

if (isMobile) {
  // Load touch-optimized components
  import('@/components/mobile/TouchDragDrop');
} else {
  // Load mouse-optimized components
  import('@/components/desktop/MouseDragDrop');
}

Testing Across Devices

Manual Testing Checklist

Mobile (320px - 599px):

Tablet Portrait (768px - 1023px):

Tablet Landscape (1024px+):

Desktop (1440px+):

Automated Responsive Tests

typescript
// Playwright responsive tests
import { test, expect } from '@playwright/test';

const viewports = [
  { name: 'Mobile Portrait', width: 375, height: 667 },
  { name: 'Mobile Landscape', width: 667, height: 375 },
  { name: 'Tablet Portrait', width: 768, height: 1024 },
  { name: 'Tablet Landscape', width: 1024, height: 768 },
  { name: 'Desktop', width: 1440, height: 900 },
  { name: 'Large Desktop', width: 1920, height: 1080 },
];

for (const viewport of viewports) {
  test(`should render correctly on ${viewport.name}`, async ({ page }) => {
    await page.setViewportSize({ width: viewport.width, height: viewport.height });
    await page.goto('/organizer/events/batbern-2025/slot-assignment');

    // Take screenshot
    await page.screenshot({
      path: `screenshots/${viewport.name.replace(' ', '-')}.png`,
      fullPage: true,
    });

    // Verify layout
    if (viewport.width < 600) {
      // Mobile: single column
      await expect(page.locator('.speaker-pool')).toBeHidden();
      await expect(page.locator('.bottom-nav')).toBeVisible();
    } else if (viewport.width < 1024) {
      // Tablet: two columns
      await expect(page.locator('.speaker-pool')).toBeVisible();
      await expect(page.locator('.quick-actions-panel')).toBeHidden();
    } else {
      // Desktop: three columns
      await expect(page.locator('.speaker-pool')).toBeVisible();
      await expect(page.locator('.quick-actions-panel')).toBeVisible();
    }
  });
}

Implementation Notes

CSS Grid Layout

css
/* Mobile first, single column */
.page-layout {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "header"
    "progress"
    "timeline"
    "nav";
  gap: 0;
}

/* Tablet: two columns */
@media (min-width: 768px) {
  .page-layout {
    grid-template-columns: 35% 65%;
    grid-template-areas:
      "header header"
      "progress progress"
      "speakers timeline"
      "speakers timeline";
    gap: 16px;
  }
}

/* Desktop: three columns */
@media (min-width: 1024px) {
  .page-layout {
    grid-template-columns: 22% 58% 20%;
    grid-template-areas:
      "header header header"
      "progress progress progress"
      "speakers timeline actions"
      "speakers timeline actions";
    gap: 24px;
  }
}

/* Large desktop: four columns (optional) */
@media (min-width: 1920px) {
  .page-layout {
    grid-template-columns: 20% 50% 15% 15%;
    grid-template-areas:
      "header header header header"
      "progress progress progress progress"
      "speakers timeline actions insights"
      "speakers timeline actions insights";
    gap: 24px;
  }
}

Material-UI Responsive Props

typescript
// Use Material-UI responsive props for clean code
<Box
  sx={{
    padding: {
      xs: 1, // 8px mobile
      sm: 2, // 16px tablet
      md: 3, // 24px desktop
    },
    fontSize: {
      xs: '14px',
      sm: '16px',
      md: '16px',
    },
  }}
>
  Content
</Box>

// Grid layout with responsive breakpoints
<Grid container spacing={{ xs: 1, sm: 2, md: 3 }}>
  <Grid item xs={12} md={4} lg={3}>
    {/* Speaker Pool */}
  </Grid>
  <Grid item xs={12} md={8} lg={6}>
    {/* Session Grid */}
  </Grid>
  <Grid item xs={12} lg={3}>
    {/* Quick Actions - hidden on mobile/tablet */}
  </Grid>
</Grid>

Summary

This wireframe documents comprehensive responsive design strategies for the slot assignment workflow across all device sizes:

Key Responsive Features:

  1. Mobile-first approach with progressive enhancement
  2. 6 breakpoints covering all device sizes (320px - 1920px+)
  3. Adaptive layouts: 1-column mobile β†’ 2-column tablet β†’ 3-column desktop β†’ 4-column ultra-wide
  4. Touch-optimized interactions on mobile/tablet (48px targets, bottom sheets)
  5. Performance optimizations (lazy loading, code splitting, responsive images)
  6. Consistent UX across all devices with appropriate adaptations

Layout Strategy:

  • Mobile: Single column, bottom nav, expandable panels
  • Tablet Portrait: Two columns (speakers | timeline)
  • Tablet Landscape: Three columns (speakers | timeline | actions)
  • Desktop: Optimized three columns with advanced features
  • Large Desktop: Optional four columns with analytics

Testing:

  • Manual checklist for each breakpoint
  • Automated Playwright tests across 6 viewports
  • Screenshot regression testing

Next Steps:

  1. Review responsive wireframe with UX team
  2. Test on real devices (not just browser emulation)
  3. Implement CSS Grid and Material-UI responsive components
  4. Verify touch interactions on actual tablets
  5. Performance test on low-end mobile devices