@govnepal/css 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/civic-calm.css +406 -4
- package/package.json +1 -1
package/dist/civic-calm.css
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Civic Calm — @govnepal/css
|
|
3
3
|
* The framework-agnostic visual layer. Semantic HTML plus .gov-* classes; no JavaScript.
|
|
4
|
-
* Built against design-guidelines 0.2.0-dev (
|
|
4
|
+
* Built against design-guidelines 0.2.0-dev (417ba0b6).
|
|
5
5
|
*
|
|
6
6
|
* This stylesheet holds ALL of Civic Calm's visual decisions. @govnepal/ui adds only behavior
|
|
7
7
|
* (ARIA, keyboard, focus management) on top of these classes — so a plain-HTML site or a CMS
|
|
@@ -343,8 +343,21 @@ code, kbd, samp, pre,
|
|
|
343
343
|
margin-inline-start: var(--gov-target-min-spacing);
|
|
344
344
|
}
|
|
345
345
|
|
|
346
|
+
/* A button may be rendered as a link (<a class="gov-button">) for a primary call-to-action that
|
|
347
|
+
* navigates — a "start" button. The generic `a` and `a:visited` rules (link.css) would otherwise
|
|
348
|
+
* win: `a:visited` has higher specificity (0,1,1) than a single button class (0,1,0), so after one
|
|
349
|
+
* click the label would turn the link-visited colour — invisible on a filled button. Pinning the
|
|
350
|
+
* label colour on `:link`/`:visited` per variant restores the correct specificity, and the
|
|
351
|
+
* inherited underline is removed. */
|
|
352
|
+
.gov-button:link,
|
|
353
|
+
.gov-button:visited {
|
|
354
|
+
text-decoration: none;
|
|
355
|
+
}
|
|
356
|
+
|
|
346
357
|
/* --- Variants ---------------------------------------------------------------------------- */
|
|
347
|
-
.gov-button--primary
|
|
358
|
+
.gov-button--primary,
|
|
359
|
+
.gov-button--primary:link,
|
|
360
|
+
.gov-button--primary:visited {
|
|
348
361
|
background: var(--gov-color-action-primary-default);
|
|
349
362
|
color: var(--gov-color-text-on-action);
|
|
350
363
|
}
|
|
@@ -357,7 +370,9 @@ code, kbd, samp, pre,
|
|
|
357
370
|
background: var(--gov-color-action-primary-active);
|
|
358
371
|
}
|
|
359
372
|
|
|
360
|
-
.gov-button--secondary
|
|
373
|
+
.gov-button--secondary,
|
|
374
|
+
.gov-button--secondary:link,
|
|
375
|
+
.gov-button--secondary:visited {
|
|
361
376
|
background: transparent;
|
|
362
377
|
color: var(--gov-color-action-secondary-text);
|
|
363
378
|
border-color: currentColor;
|
|
@@ -370,7 +385,9 @@ code, kbd, samp, pre,
|
|
|
370
385
|
/* Always paired with a confirmation dialog (components/button.md) — the colour is a warning, not
|
|
371
386
|
* the safeguard. Its red is deliberately the FUNCTIONAL red, never Simrik: "the colour of the
|
|
372
387
|
* nation is never the colour of failure" (§2.1). */
|
|
373
|
-
.gov-button--destructive
|
|
388
|
+
.gov-button--destructive,
|
|
389
|
+
.gov-button--destructive:link,
|
|
390
|
+
.gov-button--destructive:visited {
|
|
374
391
|
background: var(--gov-color-action-destructive-default);
|
|
375
392
|
color: var(--gov-color-text-on-action);
|
|
376
393
|
}
|
|
@@ -785,6 +802,80 @@ a:visited,
|
|
|
785
802
|
color: var(--gov-color-text-placeholder);
|
|
786
803
|
}
|
|
787
804
|
|
|
805
|
+
/* Toggle switch, textarea, character count (components/toggle.md, textarea.md, character-count.md). */
|
|
806
|
+
|
|
807
|
+
/* Toggle — on/off with immediate effect; the ON state is interactive, therefore blue (§5.2), and
|
|
808
|
+
* the state is shown by more than colour (position + label/word), never colour alone (§4.1). */
|
|
809
|
+
.gov-toggle {
|
|
810
|
+
display: inline-flex;
|
|
811
|
+
align-items: center;
|
|
812
|
+
gap: var(--gov-space-3);
|
|
813
|
+
cursor: pointer;
|
|
814
|
+
min-block-size: var(--gov-target-min-size);
|
|
815
|
+
}
|
|
816
|
+
|
|
817
|
+
.gov-toggle__track {
|
|
818
|
+
position: relative;
|
|
819
|
+
inline-size: 44px;
|
|
820
|
+
block-size: 24px;
|
|
821
|
+
flex-shrink: 0;
|
|
822
|
+
border-radius: var(--gov-radius-full);
|
|
823
|
+
background: var(--gov-color-control-track);
|
|
824
|
+
border: var(--gov-border-width-md) solid var(--gov-color-border-input);
|
|
825
|
+
transition: background-color var(--gov-motion-duration-fast) var(--gov-motion-easing-standard);
|
|
826
|
+
}
|
|
827
|
+
|
|
828
|
+
.gov-toggle__handle {
|
|
829
|
+
position: absolute;
|
|
830
|
+
inset-block-start: 1px;
|
|
831
|
+
inset-inline-start: 1px;
|
|
832
|
+
inline-size: 18px;
|
|
833
|
+
block-size: 18px;
|
|
834
|
+
border-radius: var(--gov-radius-full);
|
|
835
|
+
background: var(--gov-color-control-handle);
|
|
836
|
+
transition: transform var(--gov-motion-duration-fast) var(--gov-motion-easing-standard);
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
.gov-toggle[aria-checked="true"] .gov-toggle__track {
|
|
840
|
+
background: var(--gov-color-control-indicator);
|
|
841
|
+
border-color: var(--gov-color-control-indicator);
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
.gov-toggle[aria-checked="true"] .gov-toggle__handle {
|
|
845
|
+
transform: translateX(20px);
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
/* Textarea — multi-line free text; shares the input border/error treatment. */
|
|
849
|
+
.gov-textarea {
|
|
850
|
+
inline-size: 100%;
|
|
851
|
+
min-block-size: calc(var(--gov-type-body-line-height) * 3);
|
|
852
|
+
padding: var(--gov-space-3);
|
|
853
|
+
background: var(--gov-color-background-surface);
|
|
854
|
+
color: var(--gov-color-text-primary);
|
|
855
|
+
border: var(--gov-border-width-md) solid var(--gov-color-border-input);
|
|
856
|
+
border-radius: var(--gov-radius-sm);
|
|
857
|
+
resize: vertical;
|
|
858
|
+
font-family: var(--gov-font-family-ui);
|
|
859
|
+
font-size: var(--gov-type-body-font-size);
|
|
860
|
+
line-height: var(--gov-type-body-line-height);
|
|
861
|
+
}
|
|
862
|
+
|
|
863
|
+
.gov-textarea[aria-invalid="true"] {
|
|
864
|
+
border-color: var(--gov-color-status-error-border);
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
/* Character count — a polite remaining-characters message below a limited field. */
|
|
868
|
+
.gov-character-count {
|
|
869
|
+
color: var(--gov-color-text-secondary);
|
|
870
|
+
font-size: var(--gov-type-small-font-size);
|
|
871
|
+
line-height: var(--gov-type-small-line-height);
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
.gov-character-count--over {
|
|
875
|
+
color: var(--gov-color-status-error-text);
|
|
876
|
+
font-weight: var(--gov-font-weight-medium);
|
|
877
|
+
}
|
|
878
|
+
|
|
788
879
|
/* Details (components/details.md) and warning text (components/warning-text.md).
|
|
789
880
|
*
|
|
790
881
|
* Details is native <details>/<summary> — the platform's own disclosure semantics, so a screen
|
|
@@ -1055,6 +1146,201 @@ a:visited,
|
|
|
1055
1146
|
color: var(--gov-color-status-error-text);
|
|
1056
1147
|
}
|
|
1057
1148
|
|
|
1149
|
+
/* Card (components/card.md) — group everything about one subject into one bounded, opaque surface.
|
|
1150
|
+
* Low shadow, per Civic Calm's restraint (§2.1); surfaces are always fully opaque (§5.2). */
|
|
1151
|
+
.gov-card {
|
|
1152
|
+
background: var(--gov-color-background-surface);
|
|
1153
|
+
border: var(--gov-border-width-sm) solid var(--gov-color-border-default);
|
|
1154
|
+
border-radius: var(--gov-radius-lg);
|
|
1155
|
+
padding: var(--gov-space-6);
|
|
1156
|
+
box-shadow: var(--gov-elevation-1);
|
|
1157
|
+
}
|
|
1158
|
+
|
|
1159
|
+
.gov-card > * + * {
|
|
1160
|
+
margin-block-start: var(--gov-space-3);
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1163
|
+
/* The interactive variant makes the WHOLE card one link/target — never nest independent links
|
|
1164
|
+
* inside it (a nested-interactive failure). */
|
|
1165
|
+
.gov-card--interactive {
|
|
1166
|
+
display: block;
|
|
1167
|
+
color: inherit;
|
|
1168
|
+
text-decoration: none;
|
|
1169
|
+
cursor: pointer;
|
|
1170
|
+
}
|
|
1171
|
+
|
|
1172
|
+
.gov-card--interactive:hover {
|
|
1173
|
+
border-color: var(--gov-color-border-strong);
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
/* Icon button (components/icon-button.md) — an icon-only action with a required accessible name.
|
|
1177
|
+
* 44x44 minimum hit area even though the icon is smaller; never a primary action (§5.4). */
|
|
1178
|
+
.gov-icon-button {
|
|
1179
|
+
display: inline-flex;
|
|
1180
|
+
align-items: center;
|
|
1181
|
+
justify-content: center;
|
|
1182
|
+
min-inline-size: var(--gov-target-min-size);
|
|
1183
|
+
min-block-size: var(--gov-target-min-size);
|
|
1184
|
+
padding: var(--gov-space-2);
|
|
1185
|
+
border: 0;
|
|
1186
|
+
border-radius: var(--gov-radius-sm);
|
|
1187
|
+
background: transparent;
|
|
1188
|
+
color: var(--gov-color-text-primary);
|
|
1189
|
+
cursor: pointer;
|
|
1190
|
+
}
|
|
1191
|
+
|
|
1192
|
+
.gov-icon-button:hover {
|
|
1193
|
+
background: var(--gov-color-interactive-hover-surface);
|
|
1194
|
+
}
|
|
1195
|
+
|
|
1196
|
+
.gov-icon-button:active {
|
|
1197
|
+
background: var(--gov-color-interactive-pressed-surface);
|
|
1198
|
+
}
|
|
1199
|
+
|
|
1200
|
+
.gov-icon-button[disabled],
|
|
1201
|
+
.gov-icon-button[aria-disabled="true"] {
|
|
1202
|
+
color: var(--gov-color-text-disabled);
|
|
1203
|
+
cursor: not-allowed;
|
|
1204
|
+
}
|
|
1205
|
+
|
|
1206
|
+
.gov-icon-button__icon {
|
|
1207
|
+
inline-size: var(--gov-icon-size-md);
|
|
1208
|
+
block-size: var(--gov-icon-size-md);
|
|
1209
|
+
}
|
|
1210
|
+
|
|
1211
|
+
[data-density="kiosk-counter"] .gov-icon-button {
|
|
1212
|
+
min-inline-size: var(--gov-target-recommended-size);
|
|
1213
|
+
min-block-size: var(--gov-target-recommended-size);
|
|
1214
|
+
}
|
|
1215
|
+
|
|
1216
|
+
/* Modal, confirmation dialog, and toast (components/modal.md, confirmation-dialog.md, toast.md).
|
|
1217
|
+
* Overlays sit above content; surfaces stay fully opaque even over the scrim (§5.2). */
|
|
1218
|
+
|
|
1219
|
+
.gov-modal__scrim {
|
|
1220
|
+
position: fixed;
|
|
1221
|
+
inset: 0;
|
|
1222
|
+
z-index: var(--gov-z-overlay);
|
|
1223
|
+
background: var(--gov-color-overlay-scrim);
|
|
1224
|
+
display: flex;
|
|
1225
|
+
align-items: center;
|
|
1226
|
+
justify-content: center;
|
|
1227
|
+
padding: var(--gov-space-4);
|
|
1228
|
+
}
|
|
1229
|
+
|
|
1230
|
+
.gov-modal {
|
|
1231
|
+
position: relative;
|
|
1232
|
+
z-index: var(--gov-z-modal);
|
|
1233
|
+
inline-size: 100%;
|
|
1234
|
+
max-inline-size: 32rem;
|
|
1235
|
+
max-block-size: calc(100vh - var(--gov-space-8));
|
|
1236
|
+
overflow: auto;
|
|
1237
|
+
background: var(--gov-color-background-surface);
|
|
1238
|
+
border-radius: var(--gov-radius-lg);
|
|
1239
|
+
padding: var(--gov-space-6);
|
|
1240
|
+
box-shadow: var(--gov-elevation-3);
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
.gov-modal__title {
|
|
1244
|
+
font-size: var(--gov-type-h3-font-size);
|
|
1245
|
+
line-height: var(--gov-type-h3-line-height);
|
|
1246
|
+
font-weight: var(--gov-font-weight-semibold);
|
|
1247
|
+
margin-block-end: var(--gov-space-3);
|
|
1248
|
+
}
|
|
1249
|
+
|
|
1250
|
+
.gov-modal__actions {
|
|
1251
|
+
display: flex;
|
|
1252
|
+
flex-wrap: wrap;
|
|
1253
|
+
gap: var(--gov-space-3);
|
|
1254
|
+
margin-block-start: var(--gov-space-6);
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1257
|
+
/* Toast — a small floating confirmation that auto-dismisses. Success/info only, never errors. */
|
|
1258
|
+
.gov-toast-region {
|
|
1259
|
+
position: fixed;
|
|
1260
|
+
inset-block-end: var(--gov-space-6);
|
|
1261
|
+
inset-inline: 0;
|
|
1262
|
+
z-index: var(--gov-z-toast);
|
|
1263
|
+
display: flex;
|
|
1264
|
+
flex-direction: column;
|
|
1265
|
+
align-items: center;
|
|
1266
|
+
gap: var(--gov-space-2);
|
|
1267
|
+
pointer-events: none;
|
|
1268
|
+
}
|
|
1269
|
+
|
|
1270
|
+
.gov-toast {
|
|
1271
|
+
display: inline-flex;
|
|
1272
|
+
align-items: center;
|
|
1273
|
+
gap: var(--gov-space-2);
|
|
1274
|
+
padding: var(--gov-space-3) var(--gov-space-4);
|
|
1275
|
+
border-radius: var(--gov-radius-md);
|
|
1276
|
+
box-shadow: var(--gov-elevation-2);
|
|
1277
|
+
pointer-events: auto;
|
|
1278
|
+
}
|
|
1279
|
+
|
|
1280
|
+
.gov-toast--success {
|
|
1281
|
+
background: var(--gov-color-status-success-background);
|
|
1282
|
+
color: var(--gov-color-status-success-text);
|
|
1283
|
+
border: var(--gov-border-width-sm) solid var(--gov-color-status-success-border);
|
|
1284
|
+
}
|
|
1285
|
+
|
|
1286
|
+
.gov-toast--info {
|
|
1287
|
+
background: var(--gov-color-status-info-background);
|
|
1288
|
+
color: var(--gov-color-status-info-text);
|
|
1289
|
+
border: var(--gov-border-width-sm) solid var(--gov-color-status-info-border);
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
/* Tag and summary list (components/tag.md, summary-list.md). */
|
|
1293
|
+
|
|
1294
|
+
/* Tag — a neutral categorical label, NEVER a status colour (that belongs to badge). */
|
|
1295
|
+
.gov-tag {
|
|
1296
|
+
display: inline-flex;
|
|
1297
|
+
align-items: center;
|
|
1298
|
+
gap: var(--gov-space-1);
|
|
1299
|
+
padding-inline: var(--gov-space-2);
|
|
1300
|
+
padding-block: var(--gov-space-1);
|
|
1301
|
+
border-radius: var(--gov-radius-full);
|
|
1302
|
+
background: var(--gov-color-background-secondary);
|
|
1303
|
+
color: var(--gov-color-text-secondary);
|
|
1304
|
+
border: var(--gov-border-width-sm) solid var(--gov-color-border-default);
|
|
1305
|
+
font-size: var(--gov-type-small-font-size);
|
|
1306
|
+
font-weight: var(--gov-font-weight-medium);
|
|
1307
|
+
white-space: nowrap;
|
|
1308
|
+
}
|
|
1309
|
+
|
|
1310
|
+
/* Summary list — review-your-answers rows (key / value / change). */
|
|
1311
|
+
.gov-summary-list {
|
|
1312
|
+
margin: 0;
|
|
1313
|
+
}
|
|
1314
|
+
|
|
1315
|
+
.gov-summary-list__row {
|
|
1316
|
+
display: grid;
|
|
1317
|
+
gap: var(--gov-space-2) var(--gov-space-4);
|
|
1318
|
+
grid-template-columns: 1fr;
|
|
1319
|
+
padding-block: var(--gov-space-3);
|
|
1320
|
+
border-block-end: var(--gov-border-width-sm) solid var(--gov-color-border-default);
|
|
1321
|
+
break-inside: avoid;
|
|
1322
|
+
}
|
|
1323
|
+
|
|
1324
|
+
@media (min-width: 640px) {
|
|
1325
|
+
.gov-summary-list__row {
|
|
1326
|
+
grid-template-columns: 1fr 2fr auto;
|
|
1327
|
+
align-items: baseline;
|
|
1328
|
+
}
|
|
1329
|
+
}
|
|
1330
|
+
|
|
1331
|
+
.gov-summary-list__key {
|
|
1332
|
+
font-weight: var(--gov-font-weight-medium);
|
|
1333
|
+
margin: 0;
|
|
1334
|
+
}
|
|
1335
|
+
|
|
1336
|
+
.gov-summary-list__value {
|
|
1337
|
+
margin: 0;
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
.gov-summary-list__action {
|
|
1341
|
+
justify-self: start;
|
|
1342
|
+
}
|
|
1343
|
+
|
|
1058
1344
|
/* Phase banner (components/phase-banner.md), stepper (components/stepper.md), and language
|
|
1059
1345
|
* switcher (components/language-switcher.md) — the standalone navigation pieces. */
|
|
1060
1346
|
|
|
@@ -1169,6 +1455,122 @@ a:visited,
|
|
|
1169
1455
|
color: var(--gov-color-text-secondary);
|
|
1170
1456
|
}
|
|
1171
1457
|
|
|
1458
|
+
/* Breadcrumb, tabs, pagination, footer (components/breadcrumb.md, tabs.md, pagination.md, footer.md). */
|
|
1459
|
+
|
|
1460
|
+
/* Breadcrumb — hierarchy links, current page as plain text. */
|
|
1461
|
+
.gov-breadcrumb {
|
|
1462
|
+
display: flex;
|
|
1463
|
+
flex-wrap: wrap;
|
|
1464
|
+
align-items: center;
|
|
1465
|
+
gap: var(--gov-space-2);
|
|
1466
|
+
list-style: none;
|
|
1467
|
+
padding: 0;
|
|
1468
|
+
color: var(--gov-color-text-secondary);
|
|
1469
|
+
font-size: var(--gov-type-small-font-size);
|
|
1470
|
+
}
|
|
1471
|
+
|
|
1472
|
+
.gov-breadcrumb__sep {
|
|
1473
|
+
color: var(--gov-color-text-secondary);
|
|
1474
|
+
}
|
|
1475
|
+
|
|
1476
|
+
.gov-breadcrumb [aria-current="page"] {
|
|
1477
|
+
color: var(--gov-color-text-primary);
|
|
1478
|
+
font-weight: var(--gov-font-weight-medium);
|
|
1479
|
+
}
|
|
1480
|
+
|
|
1481
|
+
/* Tabs — the selected tab marked by weight + underline, never colour alone. */
|
|
1482
|
+
.gov-tabs__list {
|
|
1483
|
+
display: flex;
|
|
1484
|
+
flex-wrap: wrap;
|
|
1485
|
+
gap: var(--gov-space-2);
|
|
1486
|
+
border-block-end: var(--gov-border-width-sm) solid var(--gov-color-border-default);
|
|
1487
|
+
}
|
|
1488
|
+
|
|
1489
|
+
.gov-tabs__tab {
|
|
1490
|
+
min-block-size: var(--gov-target-min-size);
|
|
1491
|
+
padding: var(--gov-space-3) var(--gov-space-4);
|
|
1492
|
+
border: 0;
|
|
1493
|
+
background: transparent;
|
|
1494
|
+
color: var(--gov-color-text-secondary);
|
|
1495
|
+
cursor: pointer;
|
|
1496
|
+
border-block-end: var(--gov-border-width-md) solid transparent;
|
|
1497
|
+
margin-block-end: calc(-1 * var(--gov-border-width-sm));
|
|
1498
|
+
}
|
|
1499
|
+
|
|
1500
|
+
.gov-tabs__tab[aria-selected="true"] {
|
|
1501
|
+
color: var(--gov-color-text-primary);
|
|
1502
|
+
font-weight: var(--gov-font-weight-semibold);
|
|
1503
|
+
border-block-end-color: var(--gov-color-interactive-selected-indicator);
|
|
1504
|
+
}
|
|
1505
|
+
|
|
1506
|
+
.gov-tabs__panel {
|
|
1507
|
+
padding-block-start: var(--gov-space-4);
|
|
1508
|
+
}
|
|
1509
|
+
|
|
1510
|
+
/* Pagination — numbered links, current marked by more than colour. */
|
|
1511
|
+
.gov-pagination {
|
|
1512
|
+
display: flex;
|
|
1513
|
+
flex-wrap: wrap;
|
|
1514
|
+
align-items: center;
|
|
1515
|
+
gap: var(--gov-space-2);
|
|
1516
|
+
list-style: none;
|
|
1517
|
+
padding: 0;
|
|
1518
|
+
}
|
|
1519
|
+
|
|
1520
|
+
.gov-pagination__link {
|
|
1521
|
+
display: inline-flex;
|
|
1522
|
+
align-items: center;
|
|
1523
|
+
justify-content: center;
|
|
1524
|
+
min-inline-size: var(--gov-target-min-size);
|
|
1525
|
+
min-block-size: var(--gov-target-min-size);
|
|
1526
|
+
padding-inline: var(--gov-space-2);
|
|
1527
|
+
border-radius: var(--gov-radius-sm);
|
|
1528
|
+
text-decoration: none;
|
|
1529
|
+
color: var(--gov-color-link-default);
|
|
1530
|
+
}
|
|
1531
|
+
|
|
1532
|
+
.gov-pagination__link[aria-current="page"] {
|
|
1533
|
+
background: var(--gov-color-interactive-selected-background);
|
|
1534
|
+
color: var(--gov-color-text-primary);
|
|
1535
|
+
font-weight: var(--gov-font-weight-semibold);
|
|
1536
|
+
}
|
|
1537
|
+
|
|
1538
|
+
.gov-pagination__link[aria-disabled="true"] {
|
|
1539
|
+
color: var(--gov-color-text-disabled);
|
|
1540
|
+
pointer-events: none;
|
|
1541
|
+
}
|
|
1542
|
+
|
|
1543
|
+
/* Footer — a two-column trust band, single column on mobile. */
|
|
1544
|
+
.gov-footer {
|
|
1545
|
+
background: var(--gov-color-background-secondary);
|
|
1546
|
+
border-block-start: var(--gov-border-width-sm) solid var(--gov-color-border-default);
|
|
1547
|
+
padding-block: var(--gov-space-8);
|
|
1548
|
+
}
|
|
1549
|
+
|
|
1550
|
+
.gov-footer__grid {
|
|
1551
|
+
display: grid;
|
|
1552
|
+
gap: var(--gov-space-8);
|
|
1553
|
+
grid-template-columns: 1fr;
|
|
1554
|
+
}
|
|
1555
|
+
|
|
1556
|
+
@media (min-width: 768px) {
|
|
1557
|
+
.gov-footer__grid {
|
|
1558
|
+
grid-template-columns: 2fr 1fr;
|
|
1559
|
+
}
|
|
1560
|
+
}
|
|
1561
|
+
|
|
1562
|
+
.gov-footer__links {
|
|
1563
|
+
list-style: none;
|
|
1564
|
+
padding: 0;
|
|
1565
|
+
display: flex;
|
|
1566
|
+
flex-direction: column;
|
|
1567
|
+
gap: var(--gov-space-2);
|
|
1568
|
+
}
|
|
1569
|
+
|
|
1570
|
+
.gov-footer__office-en {
|
|
1571
|
+
color: var(--gov-color-text-secondary);
|
|
1572
|
+
}
|
|
1573
|
+
|
|
1172
1574
|
/* National identity marks — the emblem and flag (identity/emblem, identity/flag).
|
|
1173
1575
|
*
|
|
1174
1576
|
* Base sizing only. Both are <img> of verified masters; neither is boxed, recoloured, or given a
|