parth036 commited on
Commit
645a41a
·
verified ·
1 Parent(s): 863224b

Upload folder using huggingface_hub

Browse files
anxiety_app/static/app.css CHANGED
@@ -1,18 +1,18 @@
1
  :root {
2
- --paper: #f3eee3; /* warm cream */
3
- --paper-2: #fbf8f1; /* card surface */
4
- --ink: #211f1a; /* near-black, warm */
5
- --ink-soft: #5d584d; /* muted */
6
- --line: #ddd3c1; /* warm hairline */
7
- --line-strong: #c7bba3;
8
- --pine: #2c6e54; /* primary accent */
9
- --pine-deep: #1f5240;
10
- --clay: #bd5d39; /* secondary accent */
11
- --ochre: #b9892f; /* tertiary accent */
12
- --danger: #a3331f;
13
- --radius: 4px;
14
  --maxw: 1060px;
15
- --serif: "Fraunces", Georgia, "Times New Roman", serif;
16
  --sans: "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
17
  }
18
 
@@ -20,12 +20,10 @@
20
  html, body { margin: 0; padding: 0; }
21
 
22
  body {
23
- background-color: var(--paper);
24
- background-image:
25
- linear-gradient(var(--line) 1px, transparent 1px),
26
- linear-gradient(90deg, var(--line) 1px, transparent 1px);
27
- background-size: 100% 100%, 0 0; /* grid hook, kept subtle/off by default */
28
- color: var(--ink);
29
  font-family: var(--sans);
30
  font-size: 17px;
31
  line-height: 1.65;
@@ -38,139 +36,131 @@ body {
38
  .container { width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
39
 
40
  /* ---------- header ---------- */
41
- .site-header { border-bottom: 1px solid var(--line-strong); background: var(--paper); }
42
- .header-inner { display: flex; align-items: baseline; justify-content: space-between; height: 70px; max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
43
- .brand { font-family: var(--serif); font-weight: 600; font-size: 1.4rem; letter-spacing: -0.01em; text-decoration: none; color: var(--ink); }
44
- .brand-mark { color: var(--pine); margin-right: 2px; }
45
- .brand-accent { font-style: italic; color: var(--ink-soft); font-weight: 400; }
46
- .nav { display: flex; gap: 22px; }
47
  .nav a {
48
- position: relative; color: var(--ink-soft); text-decoration: none; font-weight: 500;
49
- font-size: 0.92rem; letter-spacing: 0.02em; text-transform: uppercase; padding: 4px 0;
50
- }
51
- .nav a:hover { color: var(--ink); }
52
- .nav a.active { color: var(--ink); }
53
- .nav a.active::after {
54
- content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px; background: var(--clay);
55
  }
 
 
 
56
 
57
  /* ---------- layout ---------- */
58
- .main { flex: 1; width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 48px 24px 72px; }
59
- .page-title { font-family: var(--serif); font-weight: 600; font-size: 2.4rem; line-height: 1.1; letter-spacing: -0.02em; margin: 0 0 10px; }
60
- .page-sub { color: var(--ink-soft); font-size: 1.05rem; margin: 0 0 32px; max-width: 60ch; }
61
 
62
  /* ---------- hero ---------- */
63
- .hero { padding: 28px 0 8px; border-bottom: 1px solid var(--line-strong); margin-bottom: 8px; }
64
- .eyebrow { font-size: 0.8rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--clay); font-weight: 600; margin: 0 0 18px; }
65
- .hero h1 { font-family: var(--serif); font-weight: 600; font-size: clamp(2.6rem, 6vw, 4.6rem); line-height: 1.02; letter-spacing: -0.03em; margin: 0 0 22px; max-width: 16ch; }
66
- .hero h1 .grad { font-style: italic; color: var(--pine); }
67
- .hero p { color: var(--ink-soft); font-size: 1.2rem; max-width: 56ch; margin: 0 0 30px; }
68
  .hero-cta { display: flex; gap: 14px; flex-wrap: wrap; }
69
 
70
- /* ---------- editorial index cards ---------- */
71
- .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 0; margin-top: 52px; border-top: 1px solid var(--line-strong); }
72
  .card {
73
- position: relative; padding: 30px 26px 30px 0; text-decoration: none; color: var(--ink);
74
- border-bottom: 1px solid var(--line); display: block; transition: padding-left 0.2s ease;
 
75
  }
76
- .grid .card { border-right: 1px solid var(--line); padding-left: 22px; }
77
- .grid .card:last-child { border-right: none; }
78
- a.card:hover { padding-left: 30px; }
79
- a.card:hover .card-no { color: var(--clay); }
80
- .card-no { font-family: var(--serif); font-size: 1.1rem; color: var(--line-strong); font-weight: 600; display: block; margin-bottom: 16px; transition: color 0.2s ease; }
81
- .card h3 { font-family: var(--serif); font-weight: 600; font-size: 1.5rem; margin: 0 0 8px; letter-spacing: -0.01em; }
82
- .card p { margin: 0; color: var(--ink-soft); font-size: 0.98rem; }
83
- .card .arrow { margin-top: 16px; color: var(--pine); font-weight: 600; font-size: 0.9rem; letter-spacing: 0.04em; text-transform: uppercase; }
84
-
85
- /* keep old emoji-circle hook harmless if present */
86
  .ic { display: none; }
87
 
88
  /* ---------- panel ---------- */
89
- .panel { background: var(--paper-2); border: 1px solid var(--line-strong); border-radius: var(--radius); padding: 32px; }
90
  .center { text-align: center; }
91
 
92
  /* ---------- buttons ---------- */
93
  .btn {
94
  display: inline-flex; align-items: center; gap: 8px; justify-content: center;
95
- font-family: var(--sans); font-weight: 600; font-size: 0.98rem; letter-spacing: 0.01em;
96
- padding: 13px 26px; border-radius: 2px; border: 1px solid var(--ink); cursor: pointer;
97
- text-decoration: none; transition: all 0.15s ease; background: var(--ink); color: var(--paper);
98
  }
99
  .btn:disabled { opacity: 0.4; cursor: not-allowed; }
100
- .btn:not(:disabled):hover { transform: translate(-2px, -2px); box-shadow: 4px 4px 0 var(--ink); }
101
- .btn-primary { background: var(--pine); border-color: var(--pine-deep); color: #fff; }
102
- .btn-primary:not(:disabled):hover { box-shadow: 4px 4px 0 var(--pine-deep); }
103
- .btn-face { background: var(--pine); border-color: var(--pine-deep); color: #fff; }
104
- .btn-face:not(:disabled):hover { box-shadow: 4px 4px 0 var(--pine-deep); }
105
- .btn-voice { background: var(--clay); border-color: #8f4225; color: #fff; }
106
- .btn-voice:not(:disabled):hover { box-shadow: 4px 4px 0 #8f4225; }
107
- .btn-ghost { background: transparent; color: var(--ink); border-color: var(--line-strong); }
108
- .btn-ghost:not(:disabled):hover { border-color: var(--ink); box-shadow: 4px 4px 0 var(--line-strong); }
109
 
110
  /* ---------- media capture ---------- */
111
- .stage { position: relative; display: inline-block; overflow: hidden; border: 1px solid var(--ink); max-width: 100%; background: #000; }
112
  .stage video { display: block; background: #000; width: 100%; height: auto; max-width: 640px; }
113
  .stage canvas { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
114
  .controls { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin: 22px 0 8px; }
115
 
116
- .status { color: var(--ink-soft); min-height: 1.5em; margin: 8px 0; }
117
- .result { font-family: var(--serif); font-size: 1.7rem; font-weight: 600; margin: 14px 0 0; letter-spacing: -0.01em; color: var(--pine); }
118
  .result:empty { display: none; }
119
 
120
  .chips { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 18px; }
121
- .chip { font-size: 0.82rem; letter-spacing: 0.04em; text-transform: uppercase; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--line-strong); background: var(--paper); color: var(--ink-soft); }
122
- .chip b { color: var(--ink); font-family: var(--serif); }
123
 
124
  .mic-orb {
125
  width: 96px; height: 96px; border-radius: 50%; margin: 4px auto 20px; display: grid; place-items: center;
126
- font-size: 2.1rem; background: var(--paper); border: 1.5px solid var(--clay);
127
  }
128
  .mic-orb.recording { animation: pulse 1.1s ease-in-out infinite; }
129
  @keyframes pulse {
130
- 0% { box-shadow: 0 0 0 0 rgba(189, 93, 57, 0.4); }
131
- 70% { box-shadow: 0 0 0 20px rgba(189, 93, 57, 0); }
132
- 100% { box-shadow: 0 0 0 0 rgba(189, 93, 57, 0); }
133
  }
134
  audio { width: 100%; max-width: 420px; margin-top: 16px; }
135
 
136
  /* ---------- PHQ-9 ---------- */
137
  .q { border-bottom: 1px solid var(--line); padding: 20px 0; }
138
  .q:first-child { padding-top: 4px; }
139
- .q-text { font-weight: 500; font-size: 1.05rem; margin-bottom: 14px; }
140
- .q-text .num { font-family: var(--serif); color: var(--clay); margin-right: 10px; font-weight: 600; }
141
  .opts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
142
  .opt { position: relative; }
143
  .opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
144
  .opt span {
145
- display: block; text-align: center; padding: 11px 6px; border-radius: 2px; border: 1px solid var(--line-strong);
146
- background: var(--paper); color: var(--ink-soft); font-size: 0.86rem; cursor: pointer; transition: all 0.12s ease;
147
  }
148
- .opt input:checked + span { border-color: var(--pine); background: var(--pine); color: #fff; font-weight: 600; }
149
- .opt:hover span { border-color: var(--ink); }
150
 
151
- .scorecard { margin-top: 26px; padding: 26px; border: 1px solid var(--ink); border-radius: var(--radius); background: var(--paper); }
152
  .scorecard:empty { display: none; }
153
- .score-num { font-family: var(--serif); font-size: 3rem; font-weight: 600; line-height: 1; }
154
- .sev { display: inline-block; padding: 5px 14px; border-radius: 999px; font-weight: 600; font-size: 0.9rem; letter-spacing: 0.02em; border: 1px solid currentColor; }
155
- .sev-minimal { color: var(--pine); }
156
- .sev-mild { color: var(--ochre); }
157
- .sev-moderate { color: var(--clay); }
158
- .sev-modsevere { color: #a83a1e; }
159
  .sev-severe { color: var(--danger); }
160
- .crisis { margin-top: 16px; padding: 16px 18px; border-radius: var(--radius); border: 1px solid var(--danger); background: rgba(163, 51, 31, 0.07); color: var(--danger); font-size: 0.95rem; }
161
 
162
  /* ---------- misc ---------- */
163
- .note { color: var(--ink-soft); font-size: 0.92rem; max-width: 64ch; margin: 22px auto 0; }
164
  .note.center { margin-left: auto; margin-right: auto; }
165
- .site-footer { border-top: 1px solid var(--line-strong); padding: 26px 0; color: var(--ink-soft); font-size: 0.9rem; background: var(--paper); }
166
  .site-footer p { margin: 0 auto; text-align: center; max-width: var(--maxw); padding: 0 24px; }
167
 
168
- @media (max-width: 720px) {
169
- .grid { grid-template-columns: 1fr; }
170
- .grid .card { border-right: none; padding-left: 0; }
171
- }
172
  @media (max-width: 520px) {
173
  .opts { grid-template-columns: repeat(2, 1fr); }
174
- .nav { gap: 14px; }
175
  body { font-size: 16px; }
176
  }
 
1
  :root {
2
+ --bg: #14110d; /* warm near-black */
3
+ --bg-2: #1b1712; /* raised surface */
4
+ --bg-3: #221d16; /* card / input */
5
+ --line: #2e2820;
6
+ --line-2: #3d352a;
7
+ --text: #ece6da; /* warm off-white */
8
+ --muted: #9c9384;
9
+ --amber: #e0a23b; /* primary accent */
10
+ --amber-soft: #f0c074;
11
+ --rust: #c9663a; /* secondary accent */
12
+ --danger: #e06a52;
13
+ --radius: 8px;
14
  --maxw: 1060px;
15
+ --display: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
16
  --sans: "Work Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
17
  }
18
 
 
20
  html, body { margin: 0; padding: 0; }
21
 
22
  body {
23
+ background:
24
+ radial-gradient(1100px 520px at 78% -8%, rgba(224, 162, 59, 0.10), transparent 60%),
25
+ var(--bg);
26
+ color: var(--text);
 
 
27
  font-family: var(--sans);
28
  font-size: 17px;
29
  line-height: 1.65;
 
36
  .container { width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
37
 
38
  /* ---------- header ---------- */
39
+ .site-header { border-bottom: 1px solid var(--line); background: rgba(20, 17, 13, 0.8); backdrop-filter: blur(8px); position: sticky; top: 0; z-index: 40; }
40
+ .header-inner { display: flex; align-items: center; justify-content: space-between; height: 70px; max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
41
+ .brand { font-family: var(--display); font-weight: 700; font-size: 1.3rem; letter-spacing: -0.02em; text-decoration: none; color: var(--text); }
42
+ .brand-mark { color: var(--amber); margin-right: 4px; }
43
+ .brand-accent { color: var(--muted); font-weight: 400; }
44
+ .nav { display: flex; gap: 24px; }
45
  .nav a {
46
+ position: relative; color: var(--muted); text-decoration: none; font-weight: 500;
47
+ font-size: 0.82rem; letter-spacing: 0.12em; text-transform: uppercase; padding: 4px 0;
 
 
 
 
 
48
  }
49
+ .nav a:hover { color: var(--text); }
50
+ .nav a.active { color: var(--amber); }
51
+ .nav a.active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px; background: var(--amber); }
52
 
53
  /* ---------- layout ---------- */
54
+ .main { flex: 1; width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 52px 24px 80px; }
55
+ .page-title { font-family: var(--display); font-weight: 600; font-size: 2.5rem; line-height: 1.08; letter-spacing: -0.03em; margin: 0 0 10px; }
56
+ .page-sub { color: var(--muted); font-size: 1.05rem; margin: 0 0 34px; max-width: 60ch; }
57
 
58
  /* ---------- hero ---------- */
59
+ .hero { padding: 26px 0 40px; }
60
+ .eyebrow { font-family: var(--display); font-size: 0.78rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--amber); font-weight: 600; margin: 0 0 22px; }
61
+ .hero h1 { font-family: var(--display); font-weight: 700; font-size: clamp(2.7rem, 6.2vw, 5rem); line-height: 1.0; letter-spacing: -0.035em; margin: 0 0 24px; max-width: 15ch; }
62
+ .hero h1 .grad { color: var(--amber); }
63
+ .hero p { color: var(--muted); font-size: 1.2rem; max-width: 54ch; margin: 0 0 32px; }
64
  .hero-cta { display: flex; gap: 14px; flex-wrap: wrap; }
65
 
66
+ /* ---------- index cards ---------- */
67
+ .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; margin-top: 30px; }
68
  .card {
69
+ position: relative; background: linear-gradient(180deg, var(--bg-2), var(--bg)); border: 1px solid var(--line);
70
+ border-radius: var(--radius); padding: 28px 24px; text-decoration: none; color: var(--text); display: block;
71
+ transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
72
  }
73
+ a.card:hover { transform: translateY(-4px); border-color: var(--line-2); box-shadow: 0 18px 40px rgba(0,0,0,0.45); }
74
+ a.card:hover .card-no { color: var(--amber); }
75
+ a.card:hover .arrow { color: var(--amber-soft); }
76
+ .card-no { font-family: var(--display); font-size: 1rem; font-weight: 600; color: var(--line-2); display: block; margin-bottom: 18px; letter-spacing: 0.05em; transition: color 0.18s ease; }
77
+ .card h3 { font-family: var(--display); font-weight: 600; font-size: 1.4rem; margin: 0 0 8px; letter-spacing: -0.01em; }
78
+ .card p { margin: 0; color: var(--muted); font-size: 0.97rem; }
79
+ .card .arrow { margin-top: 16px; color: var(--amber); font-weight: 600; font-size: 0.8rem; letter-spacing: 0.1em; text-transform: uppercase; transition: color 0.18s ease; }
 
 
 
80
  .ic { display: none; }
81
 
82
  /* ---------- panel ---------- */
83
+ .panel { background: linear-gradient(180deg, var(--bg-2), var(--bg)); border: 1px solid var(--line); border-radius: var(--radius); padding: 32px; }
84
  .center { text-align: center; }
85
 
86
  /* ---------- buttons ---------- */
87
  .btn {
88
  display: inline-flex; align-items: center; gap: 8px; justify-content: center;
89
+ font-family: var(--display); font-weight: 600; font-size: 0.95rem; letter-spacing: 0.01em;
90
+ padding: 13px 26px; border-radius: 6px; border: 1px solid transparent; cursor: pointer;
91
+ text-decoration: none; transition: all 0.15s ease; color: var(--bg); background: var(--amber);
92
  }
93
  .btn:disabled { opacity: 0.4; cursor: not-allowed; }
94
+ .btn:not(:disabled):hover { transform: translateY(-2px); }
95
+ .btn-primary { background: var(--amber); color: #1a140a; }
96
+ .btn-primary:not(:disabled):hover { background: var(--amber-soft); box-shadow: 0 10px 26px rgba(224,162,59,0.28); }
97
+ .btn-face { background: var(--amber); color: #1a140a; }
98
+ .btn-face:not(:disabled):hover { background: var(--amber-soft); box-shadow: 0 10px 26px rgba(224,162,59,0.28); }
99
+ .btn-voice { background: var(--rust); color: #fff; }
100
+ .btn-voice:not(:disabled):hover { filter: brightness(1.1); box-shadow: 0 10px 26px rgba(201,102,58,0.3); }
101
+ .btn-ghost { background: transparent; color: var(--text); border-color: var(--line-2); }
102
+ .btn-ghost:not(:disabled):hover { border-color: var(--amber); color: var(--amber); }
103
 
104
  /* ---------- media capture ---------- */
105
+ .stage { position: relative; display: inline-block; overflow: hidden; border: 1px solid var(--line-2); border-radius: var(--radius); max-width: 100%; background: #000; }
106
  .stage video { display: block; background: #000; width: 100%; height: auto; max-width: 640px; }
107
  .stage canvas { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
108
  .controls { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin: 22px 0 8px; }
109
 
110
+ .status { color: var(--muted); min-height: 1.5em; margin: 8px 0; }
111
+ .result { font-family: var(--display); font-size: 1.7rem; font-weight: 600; margin: 14px 0 0; letter-spacing: -0.01em; color: var(--amber); }
112
  .result:empty { display: none; }
113
 
114
  .chips { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 18px; }
115
+ .chip { font-family: var(--display); font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; padding: 6px 14px; border-radius: 999px; border: 1px solid var(--line-2); background: var(--bg-3); color: var(--muted); }
116
+ .chip b { color: var(--amber); }
117
 
118
  .mic-orb {
119
  width: 96px; height: 96px; border-radius: 50%; margin: 4px auto 20px; display: grid; place-items: center;
120
+ font-size: 2.1rem; background: var(--bg-3); border: 1.5px solid var(--rust);
121
  }
122
  .mic-orb.recording { animation: pulse 1.1s ease-in-out infinite; }
123
  @keyframes pulse {
124
+ 0% { box-shadow: 0 0 0 0 rgba(201, 102, 58, 0.45); }
125
+ 70% { box-shadow: 0 0 0 20px rgba(201, 102, 58, 0); }
126
+ 100% { box-shadow: 0 0 0 0 rgba(201, 102, 58, 0); }
127
  }
128
  audio { width: 100%; max-width: 420px; margin-top: 16px; }
129
 
130
  /* ---------- PHQ-9 ---------- */
131
  .q { border-bottom: 1px solid var(--line); padding: 20px 0; }
132
  .q:first-child { padding-top: 4px; }
133
+ .q-text { font-weight: 500; font-size: 1.04rem; margin-bottom: 14px; }
134
+ .q-text .num { font-family: var(--display); color: var(--amber); margin-right: 10px; font-weight: 600; }
135
  .opts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
136
  .opt { position: relative; }
137
  .opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
138
  .opt span {
139
+ display: block; text-align: center; padding: 11px 6px; border-radius: 6px; border: 1px solid var(--line-2);
140
+ background: var(--bg-3); color: var(--muted); font-size: 0.85rem; cursor: pointer; transition: all 0.12s ease;
141
  }
142
+ .opt input:checked + span { border-color: var(--amber); background: rgba(224,162,59,0.16); color: var(--text); font-weight: 600; }
143
+ .opt:hover span { border-color: var(--amber); }
144
 
145
+ .scorecard { margin-top: 26px; padding: 26px; border: 1px solid var(--line-2); border-radius: var(--radius); background: var(--bg-3); }
146
  .scorecard:empty { display: none; }
147
+ .score-num { font-family: var(--display); font-size: 3rem; font-weight: 700; line-height: 1; }
148
+ .sev { display: inline-block; padding: 5px 14px; border-radius: 999px; font-weight: 600; font-size: 0.9rem; border: 1px solid currentColor; }
149
+ .sev-minimal { color: #5fb389; }
150
+ .sev-mild { color: var(--amber); }
151
+ .sev-moderate { color: var(--rust); }
152
+ .sev-modsevere { color: #df7a4f; }
153
  .sev-severe { color: var(--danger); }
154
+ .crisis { margin-top: 16px; padding: 16px 18px; border-radius: var(--radius); border: 1px solid var(--danger); background: rgba(224, 106, 82, 0.1); color: #f0a594; font-size: 0.95rem; }
155
 
156
  /* ---------- misc ---------- */
157
+ .note { color: var(--muted); font-size: 0.92rem; max-width: 64ch; margin: 22px auto 0; }
158
  .note.center { margin-left: auto; margin-right: auto; }
159
+ .site-footer { border-top: 1px solid var(--line); padding: 26px 0; color: var(--muted); font-size: 0.9rem; }
160
  .site-footer p { margin: 0 auto; text-align: center; max-width: var(--maxw); padding: 0 24px; }
161
 
 
 
 
 
162
  @media (max-width: 520px) {
163
  .opts { grid-template-columns: repeat(2, 1fr); }
164
+ .nav { gap: 16px; }
165
  body { font-size: 16px; }
166
  }
anxiety_app/templates/base.html CHANGED
@@ -6,7 +6,7 @@
6
  <title>{% block title %}AffectScreening{% endblock %}</title>
7
  <link rel="preconnect" href="https://fonts.googleapis.com">
8
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
- <link href="https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,900&family=Work+Sans:wght@400;500;600&display=swap" rel="stylesheet">
10
  <link rel="stylesheet" href="{{ url_for('static', filename='app.css') }}">
11
  {% block head %}{% endblock %}
12
  </head>
 
6
  <title>{% block title %}AffectScreening{% endblock %}</title>
7
  <link rel="preconnect" href="https://fonts.googleapis.com">
8
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
+ <link href="https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Work+Sans:wght@400;500;600&display=swap" rel="stylesheet">
10
  <link rel="stylesheet" href="{{ url_for('static', filename='app.css') }}">
11
  {% block head %}{% endblock %}
12
  </head>