summaryrefslogtreecommitdiff
path: root/web/styles.css
blob: 9816f7217a378664b12584a1103e15601c264656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
html, body, #app { height: 100%; margin: 0; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, "Apple Color Emoji", "Segoe UI Emoji"; }
header { padding: 10px 12px; border-bottom: 1px solid #ddd; display: flex; align-items: center; gap: 16px; }
header h1 { font-size: 18px; margin: 0 8px 0 0; }
.controls { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
label { font-size: 14px; display: flex; align-items: center; gap: 6px; }
.search-box { position: relative; display: inline-block; }
.suggestions { position: absolute; top: 100%; left: 0; right: 0; background: #fff; border: 1px solid #e5e7eb; border-radius: 6px; box-shadow: 0 4px 12px rgba(0,0,0,0.08); max-height: 280px; overflow-y: auto; z-index: 1300; }
.suggestions.hidden { display: none; }
.suggestions-item { padding: 6px 8px; font-size: 13px; cursor: pointer; }
.suggestions-item:hover, .suggestions-item.active { background: #f1f5f9; }
#app { display: grid; grid-template-rows: auto 1fr 24px; }
main { height: auto; }
#cy { height: 100%; }
footer { height: 24px; line-height: 24px; display: flex; align-items: center; padding: 0 12px; border-top: 1px solid #eee; font-size: 12px; color: #666; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* Right collapsible sidebar */
.sidebar { position: fixed; top: 0; right: 0; height: 100%; width: 0; overflow: hidden; background: #ffffff; border-left: 1px solid #e5e7eb; box-shadow: -2px 0 8px rgba(0,0,0,0.05); transition: width 0.2s ease-in-out; z-index: 1100; }
.sidebar.open { width: 320px; }
.sidebar-header { display: flex; align-items: center; justify-content: space-between; padding: 10px 12px; border-bottom: 1px solid #eee; font-weight: 600; }
.sidebar-content { padding: 10px 12px; font-size: 12px; line-height: 1.4; color: #111827; }
.sidebar button { font-size: 12px; padding: 4px 8px; background: #111827; color: #fff; border: none; border-radius: 4px; cursor: pointer; }
.sidebar button.hidden { display: none; }

.sidebar-handle { position: fixed; right: 10px; top: 10px; z-index: 1200; background: #111827; color: #fff; border: none; border-radius: 4px; padding: 6px 8px; cursor: pointer; opacity: 0.9; }

/* Link-like styling inside sidebar */
.course-link { color: #2563eb; text-decoration: none; cursor: pointer; }
.course-link:hover { text-decoration: underline; }