Microsoft PowerPoint
PowerPoint 레드 + 16:9 슬라이드 + 슬라이드 패널의 발표 도구 표준
Brand DNA
브랜드 DNA
- 브랜드명: Microsoft PowerPoint
- 한 줄 정체성: 1987년 이후 프레젠테이션 표준 — 슬라이드 단위 시각 자료 제작 도구
- 공식 디자인 철학: Microsoft 365 / Fluent 2 — 슬라이드는 캔버스, UI는 보조
- 시그니처 요소 1개: PowerPoint 레드(#B7472A) 헤더 + 16:9 흰 슬라이드 + 좌측 슬라이드 썸네일 패널. Excel·Word와 같은 Office 컬러 코드
Tone & Mood
톤 & 무드
- 핵심 키워드 3개: 발표, 시각, 자신감
- 무드 설명: 중간 회색 작업 캔버스(#525252)에 문서 본래 색을 유지하는 흰 16:9 슬라이드가 떠 있는 발표 메타포. 기본 테마에서는 밝은 리본·슬라이드 탐색기, 다크 테마에서는 어두운 편집기 크롬을 사용하되 슬라이드 디자인은 반전하지 않는다.
- 비주얼 스타일: 모던 미니멀 (Fluent 2)
- 밀도(Density): Comfortable
- 모서리 성향: Sharp (슬라이드 0px, UI 2~4px)
- 평면성: Layered — 슬라이드에 md 그림자
Color System
컬러 시스템 (CSS 변수)
:root {
/* Primary - PowerPoint Red */
--color-primary-50: #F8E8E4;
--color-primary-100: #ECC4BA;
--color-primary-200: #DC9A88;
--color-primary-300: #CC7158;
--color-primary-400: #C25A3D;
--color-primary-500: #B7472A; /* PowerPoint Red */
--color-primary-600: #9C3B22;
--color-primary-700: #7D2F1A;
--color-primary-800: #5C2213;
--color-primary-900: #3A150B;
/* Secondary - 슬라이드 강조 (자유) */
--color-accent-500: #F2C811; /* 노란 강조 */
/* Neutral - Fluent 2 + 슬라이드 패널 다크 */
--color-neutral-0: #FFFFFF;
--color-neutral-50: #FAFAFA;
--color-neutral-100: #F3F2F1;
--color-neutral-200: #E1DFDD;
--color-neutral-300: #D1D1D1;
--color-neutral-500: #A19F9D;
--color-neutral-600: #605E5C;
--color-neutral-700: #525252; /* canvas bg */
--color-neutral-800: #3B3A39; /* slide panel bg */
--color-neutral-900: #252525;
--color-neutral-1000: #000000;
/* Semantic */
--color-success-bg: #DFF6DD;
--color-success-fg: #107C10;
--color-warning-bg: #FFF4CE;
--color-warning-fg: #8A6900;
--color-error-bg: #FDE7E9;
--color-error-fg: #A4262C;
--color-info-bg: #EFF6FC;
--color-info-fg: #0078D4;
/* Surface */
--bg-base: #FFFFFF; /* 앱 기본 표면 */
--bg-canvas: #525252; /* 슬라이드 외부 */
--bg-slide: #FFFFFF;
--bg-panel: #F3F2F1; /* 좌측 슬라이드 썸네일 패널 */
--bg-ribbon: #FFFFFF;
--bg-elevated: #FFFFFF; /* 리본·디자이너 패널 */
--bg-subtle: #FAFAFA;
--bg-overlay: rgba(0,0,0,0.45);
/* Text */
--text-primary: #252525;
--text-secondary: #3B3A39;
--text-tertiary: #605E5C;
--text-on-primary: #FFFFFF;
--text-on-panel: #252525;
--text-on-slide: #252525; /* 문서 콘텐츠는 앱 테마와 분리 */
--text-on-slide-muted: #605E5C;
--text-disabled: #A19F9D;
/* Border */
--border-default: #D1D1D1;
--border-subtle: #E1DFDD;
--border-strong: #A19F9D;
--border-focus: #B7472A; /* 슬라이드 선택 외곽선 */
}
[data-theme="dark"] {
--color-primary-500: #CC7158;
--bg-base: #1B1A19;
--bg-canvas: #141312;
--bg-slide: #FFFFFF;
--bg-panel: #1B1A19;
--bg-ribbon: #1F1F1F;
--bg-elevated: #252525;
--bg-subtle: #2A2A2A;
--text-primary: #F3F2F1;
--text-secondary: #D6D4D2;
--text-tertiary: #A19F9D;
--text-on-panel: #F3F2F1;
--text-on-slide: #252525;
--text-on-slide-muted: #605E5C;
--text-disabled: #605E5C;
--border-default: #484644;
--border-subtle: #323130;
--border-strong: #605E5C;
--border-focus: #CC7158;
}
Typography
타이포그래피
- 폰트 페어링:
- 영문 UI: Aptos → Segoe UI 폴백
- 슬라이드 본문은 자유 (Calibri / Aptos / Helvetica / Times 등 사용자 선택)
- 한글 UI: Aptos Korean / Malgun Gothic 폴백
- 위계 (PowerPoint UI 자체):
- Title Bar: 12px / 600 / 1.4 / 0
- Ribbon Tab: 12px / 600 / 1.4 / 0
- Body Strong: 14px / 600 / 1.55 / 0
- Body: 13px / 400 / 1.5 / 0
- Caption: 11px / 600 / 1.4 / 0.02em UPPERCASE
- 슬라이드 기본 위계 (가이드):
- Slide Title: 36~44pt / 800 / 1.2 / -0.02em
- Slide Subtitle: 22pt / 500 / 1.3 / -0.01em
- Slide Body: 18pt / 400 / 1.5 / 0
- Slide Caption: 12pt / 600 / 1.4 / 0.02em UPPERCASE
Spacing
스페이싱
- Base unit: 4px
- 토큰: ``
css --space-xs: 4px; --space-sm: 8px; --space-md: 12px; --space-lg: 16px; --space-xl: 24px; --space-2xl: 40px; --space-3xl: 64px; --slide-aspect: 16/9; --slide-padding: 40px 56px; /* 슬라이드 내부 여백 */``
Border Radius
Border Radius
--radius-none: 0; /* 슬라이드 */
--radius-sm: 2px; /* 썸네일 */
--radius-md: 4px;
--radius-lg: 8px;
--radius-full: 9999px;
Shadow / Elevation
Shadow / Elevation
--shadow-none: none;
--shadow-slide: 0 4px 12px rgba(0,0,0,0.35); /* 캔버스 위 슬라이드 */
--shadow-thumb: 0 1px 2px rgba(0,0,0,0.20);
--shadow-popover: 0 4px 8px rgba(0,0,0,0.14), 0 0 2px rgba(0,0,0,0.12);
--shadow-dialog: 0 8px 16px rgba(0,0,0,0.14);
Iconography
Iconography
- 스타일: Fluent UI Icons (Filled)
- Stroke 굵기: 1.5px equivalent
- 모서리 처리: Square
- 추천 라이브러리: Fluent UI Icons
Component Guide
컴포넌트 가이드
Button (Ribbon)
.ribbon-btn { font: 500 11px/1.4 Aptos, 'Segoe UI', sans-serif;
border-radius: 2px; padding: 4px 8px; border: 1px solid transparent;
background: transparent; color: var(--text-primary); cursor: pointer; }
.ribbon-btn:hover { background: var(--bg-subtle); border-color: var(--border-default); }
.btn-primary { background: var(--color-primary-500); color: #fff; padding: 6px 14px; font: 600 12px/1 inherit; border-radius: 2px; border: 0; }
.btn-present { background: var(--color-primary-500); color: #fff; padding: 8px 16px; font: 700 13px/1 inherit; border-radius: 2px; border: 0; }
Slide Container
.slide-canvas { background: var(--bg-canvas); padding: 32px; display: grid; place-items: center; min-height: 480px; }
.slide { background: var(--bg-slide); color: var(--text-on-slide); aspect-ratio: 16/9; width: 100%; max-width: 960px; padding: var(--slide-padding); box-shadow: var(--shadow-slide); position: relative; box-sizing: border-box; overflow: hidden; }
.slide.theme-pop::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 8px; background: var(--color-primary-500); }
.slide-thumb { background: var(--bg-slide); aspect-ratio: 16/9; box-shadow: var(--shadow-thumb); border-radius: 2px; cursor: pointer; position: relative; }
.slide-thumb.active { outline: 2px solid var(--color-primary-500); outline-offset: 2px; }
.slide-thumb .num { position: absolute; top: 2px; left: 4px; font: 600 9px/1 inherit; color: var(--text-tertiary); }
Slide Panel (Sidebar)
.panel { background: var(--bg-panel); color: var(--text-on-panel); padding: 8px; width: 180px; min-height: 100vh; overflow-y: auto; }
.panel .head { font: 600 11px/1.4 inherit; color: var(--text-tertiary); padding: 6px 8px; text-transform: uppercase; letter-spacing: 0.04em; }
.panel .thumbs { display: flex; flex-direction: column; gap: 6px; }
.panel .thumbs .item { display: grid; grid-template-columns: 18px 1fr; gap: 6px; align-items: center; }
.panel .thumbs .item .n { font: 600 11px/1 inherit; color: var(--text-tertiary); text-align: right; }
Badge / Tag
.tag { padding: 2px 6px; border-radius: 2px; font: 600 10px/1.4 inherit; letter-spacing: 0.04em; text-transform: uppercase; }
.tag-saved { background: var(--color-success-bg); color: var(--color-success-fg); }
.tag-anim { background: var(--color-primary-50); color: var(--color-primary-700); }
.tag-note { background: var(--color-warning-bg); color: var(--color-warning-fg); }
Navigation (Ribbon Tabs)
.tabs { background: var(--bg-ribbon); border-bottom: 1px solid var(--border-subtle); display: flex; padding: 0 8px; font: 600 12px/1.4 inherit; }
.tabs .tab { padding: 6px 14px; color: var(--text-tertiary); cursor: pointer; }
.tabs .tab.active { background: var(--bg-slide); color: var(--text-primary); border-top: 2px solid var(--color-primary-500); }
Motion
Motion
- 슬라이드 자체 전환은 PowerPoint 내장 효과(밀어내기/페이드/모핑) 사용. UI 모션은 짧게.
--duration-fast: 100ms;
--duration-base: 200ms;
--duration-slow: 350ms;
--ease-out: cubic-bezier(0.33, 0, 0.67, 1);
--ease-morph: cubic-bezier(0.4, 0, 0.2, 1); /* 모핑 전환 */
Anti-patterns
Anti-patterns
1. 슬라이드 모서리 라운드 적용 금지 — 발표 메타포 손실 2. 슬라이드 캔버스에 흰색·라이트 배경 사용 금지 — 다크 회색(#525252)이 슬라이드 강조에 필수 3. 슬라이드 내부 폰트 weight 300 이하 사용 금지 — 원거리 시인성 미달 4. 한 슬라이드에 텍스트 7줄 이상 사용 금지 — 7/40 가이드라인 5. 다크 테마에서 슬라이드 콘텐츠까지 자동 반전하지 말 것 — 편집기 크롬과 문서 디자인의 테마는 분리