@bongos/core 1.24.47 → 1.24.49
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/.bongos-core.json +165 -110
- package/config/branding.neutral.json +2 -1
- package/docs/copy-inventory.md +1028 -1028
- package/docs/copy-registry.json +1448 -1448
- package/docs/file-map.md +1 -1
- package/docs/module-api-changelog.md +4 -0
- package/docs/page-readings.json +625 -625
- package/modules/hall-ui/public/ai-studio.html +2 -2
- package/modules/hall-ui/public/atlas.html +2 -2
- package/modules/hall-ui/public/blockers.html +2 -2
- package/modules/hall-ui/public/board-room.html +2 -2
- package/modules/hall-ui/public/city.html +1 -1
- package/modules/hall-ui/public/collab.css +3 -22
- package/modules/hall-ui/public/collab.html +2 -2
- package/modules/hall-ui/public/commands.html +2 -2
- package/modules/hall-ui/public/controls.css +223 -0
- package/modules/hall-ui/public/copy-desk.html +2 -2
- package/modules/hall-ui/public/deploy.html +2 -2
- package/modules/hall-ui/public/goal-map.html +2 -2
- package/modules/hall-ui/public/goals.css +4 -23
- package/modules/hall-ui/public/goals.html +2 -2
- package/modules/hall-ui/public/government.html +2 -2
- package/modules/hall-ui/public/hall-render.js +1 -1
- package/modules/hall-ui/public/idea.html +2 -2
- package/modules/hall-ui/public/ideas.html +2 -2
- package/modules/hall-ui/public/index.html +5 -5
- package/modules/hall-ui/public/market-watch-item.html +2 -2
- package/modules/hall-ui/public/market-watch-rules.html +2 -2
- package/modules/hall-ui/public/market-watch.html +2 -2
- package/modules/hall-ui/public/modules.html +2 -2
- package/modules/hall-ui/public/money.html +2 -2
- package/modules/hall-ui/public/my-agents.css +3 -25
- package/modules/hall-ui/public/my-agents.html +2 -2
- package/modules/hall-ui/public/oversight.css +3 -17
- package/modules/hall-ui/public/panel.css +6 -48
- package/modules/hall-ui/public/primer.html +2 -2
- package/modules/hall-ui/public/profile.html +2 -2
- package/modules/hall-ui/public/project-settings.html +2 -2
- package/modules/hall-ui/public/roster.html +2 -2
- package/modules/hall-ui/public/settings.html +2 -2
- package/modules/hall-ui/public/shell.js +1 -1
- package/modules/hall-ui/public/speciality-tools.js +14 -14
- package/modules/hall-ui/public/street.html +1 -1
- package/modules/hall-ui/public/studio.html +2 -2
- package/modules/hall-ui/public/style.css +31 -255
- package/modules/hall-ui/public/task.html +2 -2
- package/modules/hall-ui/public/thinking.html +2 -2
- package/modules/hall-ui/public/tweak-editor.html +2 -2
- package/modules/hall-ui/public/watch.html +2 -2
- package/modules/hall-ui/public/welcome-boot.css +3 -4
- package/modules/hall-ui/public/welcome-boot.js +5 -3
- package/modules/hall-ui/public/work.html +2 -2
- package/modules/public-landing/public/account.html +1 -5
- package/modules/public-landing/public/assets/cosmos.css +7 -6
- package/modules/public-landing/public/community.html +1 -5
- package/modules/public-landing/public/connections.html +1 -5
- package/modules/public-landing/public/contact.html +1 -5
- package/modules/public-landing/public/guild.html +1 -5
- package/modules/public-landing/public/index.html +5 -8
- package/modules/public-landing/public/invitations.html +1 -5
- package/modules/public-landing/public/privacy.html +1 -5
- package/modules/public-landing/public/projects.html +1 -5
- package/modules/public-landing/public/terms.html +1 -5
- package/modules/raise/views/gate.html +4 -3
- package/modules/raise/views/nda.html +2 -1
- package/modules/raise/views/page.html +4 -3
- package/modules/status-ui/public/index.html +1 -1
- package/modules/status-ui/public/style.css +2 -2
- package/modules/ui-design/public/brand/apple-touch-icon.png +0 -0
- package/modules/ui-design/public/brand/favicon.svg +1 -0
- package/modules/ui-design/public/brand/mark-body.svg +1 -0
- package/modules/ui-design/public/brand/mark-dark.svg +1 -0
- package/modules/ui-design/public/brand/mark-dot.svg +1 -0
- package/modules/ui-design/public/brand/mark-light.svg +1 -0
- package/modules/ui-design/public/brand/mark-mono.svg +1 -0
- package/modules/ui-design/public/brand/mark.svg +21 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/release-notes.json +12 -0
- package/scripts/bongos/fitness.js +1 -2
- package/scripts/bongos/gen-brand.js +99 -0
- package/scripts/gds/gen-brand.js +7 -0
- package/src/bongos/platform-visibility-gate.js +6 -3
- package/src/bongos/prelaunch-gate.js +6 -3
- package/src/bongos/serve-internal.js +1 -0
- package/src/brand-mark.js +96 -0
- package/src/branding.js +2 -0
- package/src/hall-look.js +7 -7
- package/src/module-api.js +1 -1
- package/tests/brand_mark.mjs +195 -0
- package/tests/bulk_toolbar.mjs +4 -1
- package/tests/cloud_bongos_pack.mjs +5 -2
- package/tests/hall_board_world.mjs +6 -2
- package/tests/hall_builders_page_pass.mjs +6 -4
- package/tests/hall_controls.mjs +274 -0
- package/tests/hall_loading.mjs +8 -10
- package/tests/hall_oversight_world.mjs +7 -4
- package/tests/hall_record_world.mjs +21 -7
- package/tests/hall_settings_world.mjs +5 -2
- package/tests/loading_mark.mjs +7 -13
- package/tests/nav_permission_atoms.mjs +2 -1
- package/tests/raise.mjs +3 -1
- package/tests/welcome_boot.mjs +5 -2
- package/modules/raise/public/favicon.svg +0 -1
- package/modules/raise/public/logo-ink.svg +0 -1
- package/modules/raise/public/logo-night.svg +0 -1
|
@@ -60,6 +60,9 @@
|
|
|
60
60
|
shadows, motion, stacking — every surface loads. Imported FIRST so this
|
|
61
61
|
sheet's own rules follow it; the hall's scale names below are aliases of it. */
|
|
62
62
|
@import url("/modules/ui-design/public/tokens.css");
|
|
63
|
+
/* The hall's one button and one field (task 1005084): .btn and its modifiers,
|
|
64
|
+
the text field / select / textarea. Straight after the scales it spends. */
|
|
65
|
+
@import url("controls.css");
|
|
63
66
|
@import url("page-notes.css");
|
|
64
67
|
@import url("craft-review.css");
|
|
65
68
|
|
|
@@ -430,20 +433,7 @@ code, kbd, pre {
|
|
|
430
433
|
the composition around it. */
|
|
431
434
|
.num, .tabular { font-variant-numeric: tabular-nums; }
|
|
432
435
|
|
|
433
|
-
|
|
434
|
-
font-family: var(--font-body);
|
|
435
|
-
font-size: 14px;
|
|
436
|
-
color: var(--ink);
|
|
437
|
-
background: none;
|
|
438
|
-
border: 1px solid var(--rule);
|
|
439
|
-
border-radius: var(--radius-pill);
|
|
440
|
-
min-height: 30px;
|
|
441
|
-
padding: 5px 12px;
|
|
442
|
-
}
|
|
443
|
-
select:hover, input[type="text"]:hover, input[type="search"]:hover { border-color: var(--ink-faint); }
|
|
444
|
-
textarea { border-radius: var(--radius-sm); }
|
|
445
|
-
select:disabled { opacity: 0.55; cursor: not-allowed; }
|
|
446
|
-
select option { background: var(--bg-card); color: var(--ink); }
|
|
436
|
+
/* The field (text input, select, textarea) is controls.css's (task 1005084). */
|
|
447
437
|
|
|
448
438
|
button { font-family: var(--font-body); }
|
|
449
439
|
|
|
@@ -569,12 +559,12 @@ main:focus { outline: none; }
|
|
|
569
559
|
width: 28px; height: 28px;
|
|
570
560
|
display: block;
|
|
571
561
|
flex-shrink: 0;
|
|
562
|
+
/* drawn from the one mark (modules/ui-design/public/brand/mark.svg, task 1005088) */
|
|
563
|
+
--mark-ink: var(--ink);
|
|
572
564
|
}
|
|
573
|
-
html[data-theme="dark"] .brand-mark__mark
|
|
574
|
-
html[data-theme="dark"] .brand-mark__mark .mp { fill: #e2e1e4; }
|
|
565
|
+
html[data-theme="dark"] .brand-mark__mark { --mark-ink: #e2e1e4; }
|
|
575
566
|
@media (prefers-color-scheme: dark) {
|
|
576
|
-
html:not([data-theme]) .brand-mark__mark
|
|
577
|
-
html:not([data-theme]) .brand-mark__mark .mp { fill: #e2e1e4; }
|
|
567
|
+
html:not([data-theme]) .brand-mark__mark { --mark-ink: #e2e1e4; }
|
|
578
568
|
}
|
|
579
569
|
/* A project's logo in the mark's place (ADR 0358): the image is the founder's, so
|
|
580
570
|
it gets a soft square, never a recolour. */
|
|
@@ -1422,8 +1412,7 @@ html.setup-gate-open { overflow: hidden; }
|
|
|
1422
1412
|
}
|
|
1423
1413
|
.setup-gate code { font-family: var(--font-mono); font-size: 14px; padding: 1px 6px; border-radius: 6px; background: var(--glass); }
|
|
1424
1414
|
.setup-gate__crafts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
|
|
1425
|
-
.setup-gate__craft
|
|
1426
|
-
.setup-gate__save {
|
|
1415
|
+
.setup-gate__craft {
|
|
1427
1416
|
min-height: 36px;
|
|
1428
1417
|
padding: 0 16px;
|
|
1429
1418
|
border-radius: var(--radius-pill);
|
|
@@ -1435,8 +1424,8 @@ html.setup-gate-open { overflow: hidden; }
|
|
|
1435
1424
|
cursor: pointer;
|
|
1436
1425
|
}
|
|
1437
1426
|
.setup-gate__craft[aria-pressed="true"] { border-color: var(--accent); background: var(--accent-tint); }
|
|
1438
|
-
|
|
1439
|
-
.setup-gate__save
|
|
1427
|
+
/* The save is the shared primary door (controls.css, task 1005084). */
|
|
1428
|
+
.setup-gate__save { margin-top: 12px; }
|
|
1440
1429
|
.setup-gate__err { margin: 8px 0 0; font-size: 14px; color: var(--danger); }
|
|
1441
1430
|
.setup-gate__foot { margin: 24px 0 0; font-size: 14px; }
|
|
1442
1431
|
.setup-gate__foot a { color: var(--ink-soft); }
|
|
@@ -2634,23 +2623,16 @@ main [id] { scroll-margin-top: calc(var(--topbar-h) + 16px); }
|
|
|
2634
2623
|
wherever there is room and drops it where there is not. */
|
|
2635
2624
|
min-width: min(150px, 100%);
|
|
2636
2625
|
max-width: 100%;
|
|
2637
|
-
min-height: 32px;
|
|
2638
|
-
font-family: var(--font-body);
|
|
2639
|
-
padding: 4px 8px;
|
|
2640
|
-
font-size: 13.5px;
|
|
2641
2626
|
text-transform: none;
|
|
2642
2627
|
letter-spacing: normal;
|
|
2643
2628
|
font-weight: 400;
|
|
2644
2629
|
}
|
|
2645
|
-
/* task 1829: the Work Board free-text search box
|
|
2646
|
-
|
|
2630
|
+
/* task 1829: the Work Board free-text search box. Both it and the selects are
|
|
2631
|
+
the shared field (controls.css, task 1005084); the filter only sets widths
|
|
2632
|
+
and undoes the label voice they would inherit. */
|
|
2647
2633
|
.filter input[type="search"] {
|
|
2648
2634
|
min-width: min(200px, 100%);
|
|
2649
2635
|
max-width: 100%;
|
|
2650
|
-
min-height: 32px;
|
|
2651
|
-
font-family: var(--font-body);
|
|
2652
|
-
padding: 4px 8px;
|
|
2653
|
-
font-size: 13.5px;
|
|
2654
2636
|
text-transform: none;
|
|
2655
2637
|
letter-spacing: normal;
|
|
2656
2638
|
font-weight: 400;
|
|
@@ -2673,94 +2655,8 @@ main [id] { scroll-margin-top: calc(var(--topbar-h) + 16px); }
|
|
|
2673
2655
|
}
|
|
2674
2656
|
.pager__range { font-family: var(--font-mono); font-size: 12px; color: var(--ink-faint); font-variant-numeric: tabular-nums; }
|
|
2675
2657
|
|
|
2676
|
-
/*
|
|
2677
|
-
|
|
2678
|
-
the live thing. 28px of box plus the row’s own air clears the 24px floor. */
|
|
2679
|
-
.btn-ghost {
|
|
2680
|
-
display: inline-flex;
|
|
2681
|
-
align-items: center;
|
|
2682
|
-
justify-content: center;
|
|
2683
|
-
gap: 6px;
|
|
2684
|
-
min-height: 30px;
|
|
2685
|
-
min-width: 56px;
|
|
2686
|
-
padding: 0 14px;
|
|
2687
|
-
font-size: 13px;
|
|
2688
|
-
text-transform: lowercase;
|
|
2689
|
-
color: var(--ink-soft);
|
|
2690
|
-
background: none;
|
|
2691
|
-
border: 1px solid var(--rule);
|
|
2692
|
-
border-radius: var(--radius-pill);
|
|
2693
|
-
cursor: pointer;
|
|
2694
|
-
}
|
|
2695
|
-
.btn-ghost:hover:not(:disabled) { border-color: var(--ink-faint); color: var(--ink); text-decoration: none; }
|
|
2696
|
-
.btn-ghost:disabled { color: var(--ink-faint); border-color: var(--rule-soft); cursor: default; }
|
|
2697
|
-
|
|
2698
|
-
/* The accent door: the page’s one primary action. --accent-on is the dark ink
|
|
2699
|
-
that goes on the salmon; white on it fails AA and is banned. */
|
|
2700
|
-
.btn-accent {
|
|
2701
|
-
display: inline-flex;
|
|
2702
|
-
align-items: center;
|
|
2703
|
-
justify-content: center;
|
|
2704
|
-
gap: 6px;
|
|
2705
|
-
min-height: 34px;
|
|
2706
|
-
min-width: 74px;
|
|
2707
|
-
padding: 0 16px;
|
|
2708
|
-
font-size: 13.5px;
|
|
2709
|
-
font-weight: 500;
|
|
2710
|
-
text-transform: lowercase;
|
|
2711
|
-
color: var(--accent-on);
|
|
2712
|
-
background: var(--accent);
|
|
2713
|
-
border: 0;
|
|
2714
|
-
border-radius: var(--radius-pill);
|
|
2715
|
-
cursor: pointer;
|
|
2716
|
-
}
|
|
2717
|
-
.btn-accent:hover:not(:disabled) { background: var(--accent-lift); color: var(--accent-on); text-decoration: none; }
|
|
2718
|
-
.btn-accent:disabled { background: var(--glass); color: var(--ink-faint); cursor: default; }
|
|
2719
|
-
|
|
2720
|
-
/* `.btn` / `.btn--ghost` — the SECOND button vocabulary in the hall, used by
|
|
2721
|
-
ideas, idea, copy-desk, my-projects and collab. Task 1003305 found it had no
|
|
2722
|
-
rule anywhere in the surface: every one of those buttons was rendering as a
|
|
2723
|
-
browser default control, on a page whose every other shape is a pill. They
|
|
2724
|
-
are not renamed to .btn-accent/.btn-ghost because the class is spelled into
|
|
2725
|
-
markup and into tests/idea_spark_hall.mjs; instead the two vocabularies are
|
|
2726
|
-
made to say the same thing. `.btn` is the accent door and `.btn--ghost` its
|
|
2727
|
-
quiet sibling, which is exactly how the calling pages already use the pair
|
|
2728
|
-
(submit vs. discard, mark vs. withdraw). --accent-on is the dark ink for the
|
|
2729
|
-
salmon; white on it fails AA and DESIGN.md bans it. */
|
|
2730
|
-
.btn {
|
|
2731
|
-
display: inline-flex;
|
|
2732
|
-
align-items: center;
|
|
2733
|
-
justify-content: center;
|
|
2734
|
-
gap: 6px;
|
|
2735
|
-
min-height: 34px;
|
|
2736
|
-
min-width: 74px;
|
|
2737
|
-
padding: 0 16px;
|
|
2738
|
-
font-family: var(--font-body);
|
|
2739
|
-
font-size: 13.5px;
|
|
2740
|
-
font-weight: 500;
|
|
2741
|
-
text-transform: lowercase;
|
|
2742
|
-
color: var(--accent-on);
|
|
2743
|
-
background: var(--accent);
|
|
2744
|
-
/* transparent rather than absent: collab.css's `.btn--quiet` sets only a
|
|
2745
|
-
border-COLOUR, and a modifier cannot paint an edge that was never reserved. */
|
|
2746
|
-
border: var(--line) solid transparent;
|
|
2747
|
-
border-radius: var(--radius-pill);
|
|
2748
|
-
cursor: pointer;
|
|
2749
|
-
}
|
|
2750
|
-
.btn:hover:not(:disabled) { background: var(--accent-lift); color: var(--accent-on); text-decoration: none; }
|
|
2751
|
-
.btn:disabled { background: var(--glass); color: var(--ink-faint); cursor: default; }
|
|
2752
|
-
.btn--ghost {
|
|
2753
|
-
min-height: 30px;
|
|
2754
|
-
min-width: 56px;
|
|
2755
|
-
padding: 0 14px;
|
|
2756
|
-
font-size: 13px;
|
|
2757
|
-
font-weight: 400;
|
|
2758
|
-
color: var(--ink-soft);
|
|
2759
|
-
background: none;
|
|
2760
|
-
border-color: var(--rule);
|
|
2761
|
-
}
|
|
2762
|
-
.btn--ghost:hover:not(:disabled) { background: none; border-color: var(--ink-faint); color: var(--ink); }
|
|
2763
|
-
.btn--ghost:disabled { background: none; color: var(--ink-faint); border-color: var(--rule-soft); }
|
|
2658
|
+
/* The buttons — .btn and its modifiers, and the older names pages still write
|
|
2659
|
+
(.btn-accent, .btn-ghost, .btn--ghost …) — are controls.css's (task 1005084). */
|
|
2764
2660
|
|
|
2765
2661
|
/* ---------- profile / standing ---------- */
|
|
2766
2662
|
|
|
@@ -3040,11 +2936,8 @@ main [id] { scroll-margin-top: calc(var(--topbar-h) + 16px); }
|
|
|
3040
2936
|
gap keeps the label and the select together when the lede wraps. */
|
|
3041
2937
|
.curve__filter { display: inline-flex; align-items: center; gap: 6px; margin-left: 10px; }
|
|
3042
2938
|
.curve__filter-label { color: var(--ink-soft); }
|
|
3043
|
-
.
|
|
3044
|
-
|
|
3045
|
-
border: 1px solid var(--border-strong); border-radius: var(--radius-sm);
|
|
3046
|
-
padding: 2px 6px; max-width: 16ch;
|
|
3047
|
-
}
|
|
2939
|
+
/* the shared field (controls.css); only its width is the filter's */
|
|
2940
|
+
.curve__filter-select { max-width: 16ch; }
|
|
3048
2941
|
|
|
3049
2942
|
.curve__headline {
|
|
3050
2943
|
display: grid;
|
|
@@ -3297,22 +3190,6 @@ main [id] { scroll-margin-top: calc(var(--topbar-h) + 16px); }
|
|
|
3297
3190
|
}
|
|
3298
3191
|
.setup__divider::before, .setup__divider::after { content: ""; flex: 1; border-top: 1px solid var(--rule-soft); }
|
|
3299
3192
|
|
|
3300
|
-
.setup__btn {
|
|
3301
|
-
display: inline-flex;
|
|
3302
|
-
align-items: center;
|
|
3303
|
-
gap: 8px;
|
|
3304
|
-
height: 34px;
|
|
3305
|
-
padding: 0 16px;
|
|
3306
|
-
border-radius: var(--radius-sm);
|
|
3307
|
-
border: 1px solid var(--accent);
|
|
3308
|
-
background: var(--accent);
|
|
3309
|
-
color: #fff;
|
|
3310
|
-
font-size: 13.5px;
|
|
3311
|
-
font-weight: 600;
|
|
3312
|
-
cursor: pointer;
|
|
3313
|
-
}
|
|
3314
|
-
.setup__btn:hover:not(:disabled) { background: var(--accent-deep); border-color: var(--accent-deep); color: #fff; text-decoration: none; }
|
|
3315
|
-
.setup__btn:disabled, .setup__btn--open[aria-disabled="true"] { opacity: 0.5; cursor: not-allowed; }
|
|
3316
3193
|
.setup__getcode { margin: 10px 0; }
|
|
3317
3194
|
/* A <summary> is a control, so it owes the 24px floor like any other; it
|
|
3318
3195
|
measured 20px tall (task 1003304). The height is bought with padding rather
|
|
@@ -3366,9 +3243,7 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
3366
3243
|
background: var(--bg-card);
|
|
3367
3244
|
text-align: center;
|
|
3368
3245
|
}
|
|
3369
|
-
.landing__logo { display: block; width: 56px; height: 56px; margin: 0 auto 18px; overflow: visible; }
|
|
3370
|
-
.landing__ring { stroke: var(--ink); }
|
|
3371
|
-
.landing__planet { fill: var(--ink); }
|
|
3246
|
+
.landing__logo { display: block; width: 56px; height: 56px; margin: 0 auto 18px; overflow: visible; --mark-ink: var(--ink); }
|
|
3372
3247
|
.landing__title {
|
|
3373
3248
|
margin: 0 0 28px;
|
|
3374
3249
|
font-family: var(--font-display);
|
|
@@ -3387,31 +3262,9 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
3387
3262
|
line-height: 18px;
|
|
3388
3263
|
}
|
|
3389
3264
|
.landing__cta { margin: 14px 0; }
|
|
3390
|
-
.landing__btn
|
|
3391
|
-
display: inline-flex;
|
|
3392
|
-
align-items: center;
|
|
3393
|
-
justify-content: center;
|
|
3394
|
-
gap: 10px;
|
|
3395
|
-
min-height: 46px;
|
|
3396
|
-
padding: 0 22px;
|
|
3397
|
-
border-radius: var(--radius-pill);
|
|
3398
|
-
border: 0;
|
|
3399
|
-
background: var(--accent);
|
|
3400
|
-
color: var(--accent-on);
|
|
3401
|
-
font-size: 14px;
|
|
3402
|
-
font-weight: 500;
|
|
3403
|
-
text-transform: lowercase;
|
|
3404
|
-
cursor: pointer;
|
|
3405
|
-
}
|
|
3406
|
-
.landing__btn:hover { background: var(--accent-lift); text-decoration: none; color: var(--accent-on); }
|
|
3265
|
+
/* .landing__btn is the shared primary door, --quiet its ghost (controls.css). */
|
|
3407
3266
|
.landing__btn--block { display: flex; width: 100%; }
|
|
3408
3267
|
.landing__gh { flex-shrink: 0; }
|
|
3409
|
-
.landing__btn--quiet {
|
|
3410
|
-
background: transparent;
|
|
3411
|
-
color: var(--ink);
|
|
3412
|
-
box-shadow: inset 0 0 0 1px var(--border-strong);
|
|
3413
|
-
}
|
|
3414
|
-
.landing__btn--quiet:hover { background: var(--surface-2); color: var(--ink); }
|
|
3415
3268
|
.landing__note { font-size: 12.5px; color: var(--ink-faint); }
|
|
3416
3269
|
.landing__error { color: var(--danger); }
|
|
3417
3270
|
.landing__error-h { color: var(--danger); margin: 0 0 4px; font-size: 14px; }
|
|
@@ -3642,29 +3495,8 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
3642
3495
|
the touches chip and the whole-card selection target (promoted from work.css,
|
|
3643
3496
|
task 1003659, so their cascade position is the same on every page). */
|
|
3644
3497
|
|
|
3645
|
-
/* The page's one primary action, and the only accent FILL on the board
|
|
3646
|
-
|
|
3647
|
-
DESIGN.md bans it outright, which is what the old `color: #fff` was. */
|
|
3648
|
-
.task__claim {
|
|
3649
|
-
display: inline-flex;
|
|
3650
|
-
align-items: center;
|
|
3651
|
-
justify-content: center;
|
|
3652
|
-
min-height: 34px;
|
|
3653
|
-
min-width: 74px;
|
|
3654
|
-
padding: 0 16px;
|
|
3655
|
-
background: var(--accent);
|
|
3656
|
-
border: 0;
|
|
3657
|
-
color: var(--accent-on);
|
|
3658
|
-
border-radius: var(--radius-pill);
|
|
3659
|
-
font-size: 13.5px;
|
|
3660
|
-
font-weight: 500;
|
|
3661
|
-
text-transform: lowercase;
|
|
3662
|
-
cursor: pointer;
|
|
3663
|
-
white-space: nowrap;
|
|
3664
|
-
transition: background 150ms, opacity 150ms;
|
|
3665
|
-
}
|
|
3666
|
-
.task__claim:hover:not(:disabled) { background: var(--accent-lift); color: var(--accent-on); }
|
|
3667
|
-
.task__claim:disabled { background: var(--glass); color: var(--ink-faint); cursor: default; }
|
|
3498
|
+
/* The page's one primary action, and the only accent FILL on the board: the
|
|
3499
|
+
shared primary door at the row size (controls.css, task 1005084). */
|
|
3668
3500
|
|
|
3669
3501
|
/* Files a claimable task is responsible for — a compact count chip in the meta
|
|
3670
3502
|
row; the full path list rides the tooltip (task 2170 density pass). The mono
|
|
@@ -3778,27 +3610,13 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
3778
3610
|
color: var(--ink-faint);
|
|
3779
3611
|
}
|
|
3780
3612
|
|
|
3781
|
-
.wip__release
|
|
3782
|
-
|
|
3783
|
-
align-items: center;
|
|
3784
|
-
justify-content: center;
|
|
3785
|
-
min-height: 30px;
|
|
3786
|
-
padding: 0 14px;
|
|
3787
|
-
background: none;
|
|
3788
|
-
border: var(--line) solid var(--rule);
|
|
3789
|
-
color: var(--ink-soft);
|
|
3790
|
-
border-radius: var(--radius-pill);
|
|
3791
|
-
font-size: 13px;
|
|
3792
|
-
text-transform: lowercase;
|
|
3793
|
-
cursor: pointer;
|
|
3794
|
-
transition: background 150ms, color 150ms, border-color 150ms;
|
|
3795
|
-
}
|
|
3613
|
+
/* .wip__release is the shared ghost at the row size (controls.css); a release
|
|
3614
|
+
is the undo of a claim, so its hover warns. */
|
|
3796
3615
|
.wip__release:hover:not(:disabled) {
|
|
3797
3616
|
background: var(--danger-weak);
|
|
3798
3617
|
color: var(--danger);
|
|
3799
3618
|
border-color: color-mix(in srgb, var(--danger) 40%, transparent);
|
|
3800
3619
|
}
|
|
3801
|
-
.wip__release:disabled { opacity: 0.55; cursor: default; }
|
|
3802
3620
|
|
|
3803
3621
|
.wip__select {
|
|
3804
3622
|
appearance: none;
|
|
@@ -4064,38 +3882,8 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
4064
3882
|
.td-dep:hover { text-decoration: underline; }
|
|
4065
3883
|
.td-dep-status { color: var(--ink-faint); font-size: 12px; margin-left: 6px; }
|
|
4066
3884
|
.td-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 18px 0 0; }
|
|
4067
|
-
/*
|
|
4068
|
-
|
|
4069
|
-
— the exact pairing DESIGN.md bans, because it fails AA. */
|
|
4070
|
-
.td-btn {
|
|
4071
|
-
display: inline-flex;
|
|
4072
|
-
align-items: center;
|
|
4073
|
-
justify-content: center;
|
|
4074
|
-
font: inherit;
|
|
4075
|
-
font-size: 13px;
|
|
4076
|
-
min-height: 30px;
|
|
4077
|
-
min-width: 56px;
|
|
4078
|
-
padding: 0 14px;
|
|
4079
|
-
border: var(--line) solid var(--rule);
|
|
4080
|
-
border-radius: var(--radius-pill);
|
|
4081
|
-
background: none;
|
|
4082
|
-
color: var(--ink-soft);
|
|
4083
|
-
text-transform: lowercase;
|
|
4084
|
-
cursor: pointer;
|
|
4085
|
-
}
|
|
4086
|
-
.td-btn:hover:not(:disabled) { border-color: var(--ink-faint); color: var(--ink); text-decoration: none; }
|
|
4087
|
-
.td-btn--primary {
|
|
4088
|
-
min-height: 34px;
|
|
4089
|
-
min-width: 74px;
|
|
4090
|
-
padding: 0 16px;
|
|
4091
|
-
font-weight: 500;
|
|
4092
|
-
background: var(--accent);
|
|
4093
|
-
color: var(--accent-on);
|
|
4094
|
-
border-color: var(--accent);
|
|
4095
|
-
}
|
|
4096
|
-
.td-btn--primary:hover:not(:disabled) { background: var(--accent-lift); border-color: var(--accent-lift); color: var(--accent-on); }
|
|
4097
|
-
.td-btn:disabled { color: var(--ink-faint); border-color: var(--rule-soft); cursor: default; }
|
|
4098
|
-
.td-btn--primary:disabled { background: var(--glass); }
|
|
3885
|
+
/* .td-btn is the shared ghost at the row size and .td-btn--primary the accent
|
|
3886
|
+
door (controls.css, task 1005084). */
|
|
4099
3887
|
.td-action-note { flex-basis: 100%; font-size: 12.5px; color: var(--ink-soft); margin: 4px 0 0; }
|
|
4100
3888
|
|
|
4101
3889
|
/* Idea triage inside the record overlay (task 1002447). A two-column grid so
|
|
@@ -4103,17 +3891,9 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
4103
3891
|
.td-form { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 10px; margin: 14px 0 0; }
|
|
4104
3892
|
.td-field { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
|
|
4105
3893
|
.td-field--wide { grid-column: 1 / -1; }
|
|
4106
|
-
/* The
|
|
4107
|
-
|
|
4108
|
-
.td-field input, .td-field select {
|
|
4109
|
-
font-size: 13px;
|
|
4110
|
-
min-width: 0;
|
|
4111
|
-
max-width: 100%;
|
|
4112
|
-
}
|
|
4113
|
-
/* The 24px floor (task 1004301 found it failing): at 13px the base field's padding left a
|
|
4114
|
-
number input 21px tall beside a select that clears it — the task page's "Wait for task"
|
|
4115
|
-
box. Sized to sit level with its select. */
|
|
4116
|
-
.td-field input { min-height: 26px; box-sizing: border-box; }
|
|
3894
|
+
/* The field is the shared one (controls.css); the two-column grid only needs
|
|
3895
|
+
it to shrink with its column. */
|
|
3896
|
+
.td-field input, .td-field select { min-width: 0; max-width: 100%; }
|
|
4117
3897
|
.td-form .td-actions, .td-form-hint, .td-form .td-action-note { grid-column: 1 / -1; }
|
|
4118
3898
|
.td-form .td-actions { margin: 4px 0 0; }
|
|
4119
3899
|
.td-form-hint { font-size: 12.5px; color: var(--ink-soft); margin: 0; }
|
|
@@ -4316,7 +4096,6 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
4316
4096
|
.filter-views__tag { font-size: 11px; color: var(--ink-faint); margin-left: 6px; }
|
|
4317
4097
|
.filter-views__empty, .filter-views__note { font-size: 12.5px; color: var(--ink-soft); margin: 0 0 10px; }
|
|
4318
4098
|
.filter-views__note:empty { display: none; }
|
|
4319
|
-
.filter-views__row .btn-ghost { min-height: 24px; padding: 0 8px; font-size: 12px; }
|
|
4320
4099
|
.filter-views__save { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px; }
|
|
4321
4100
|
.filter-views__save .filter { flex: 1 1 180px; }
|
|
4322
4101
|
/* On a phone the button can sit anywhere in a wrapped row, so the menu spans the
|
|
@@ -4378,9 +4157,6 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
4378
4157
|
than edit the markup, the name joins the lede it meant. */
|
|
4379
4158
|
.scroll__note { margin: 0 0 14px; font-size: 13.5px; color: var(--ink-soft); max-width: var(--measure); }
|
|
4380
4159
|
|
|
4381
|
-
/* collab.js:73-74 — the settle buttons asked for a small variant of .btn that
|
|
4382
|
-
does not exist, so "Someone helped" rendered full-size on every row. */
|
|
4383
|
-
.btn--sm { min-height: 26px; padding: 0 11px; font-size: 12.5px; }
|
|
4384
4160
|
|
|
4385
4161
|
/* The notice line: roster.js and blockers.js notice() set body.className='note'
|
|
4386
4162
|
for an empty / error message, and neither page's sheet defines it. */
|
|
@@ -4450,7 +4226,7 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
4450
4226
|
}
|
|
4451
4227
|
/* the ring and the core: one ink, breathing */
|
|
4452
4228
|
.hall-loading::before {
|
|
4453
|
-
--hl-shape: url("
|
|
4229
|
+
--hl-shape: url("/modules/ui-design/public/brand/mark-body.svg");
|
|
4454
4230
|
background: color-mix(in srgb, var(--ink) 30%, var(--bg-card));
|
|
4455
4231
|
animation:
|
|
4456
4232
|
hall-loading-turn var(--hl-beat) cubic-bezier(.45, .05, .55, .95) infinite,
|
|
@@ -4458,7 +4234,7 @@ html[data-door="out"] #hall-main { width: 100%; }
|
|
|
4458
4234
|
}
|
|
4459
4235
|
/* the dot: the accent, laid exactly over the mark and turning with it */
|
|
4460
4236
|
.hall-loading::after {
|
|
4461
|
-
--hl-shape: url("
|
|
4237
|
+
--hl-shape: url("/modules/ui-design/public/brand/mark-dot.svg");
|
|
4462
4238
|
position: absolute;
|
|
4463
4239
|
top: var(--hl-pad);
|
|
4464
4240
|
left: calc(50% - var(--hl-size) / 2);
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
6
|
<title>Task — {{worldName}}</title>
|
|
7
7
|
<meta name="description" content="Task details — {{worldName}}.">
|
|
8
|
-
<link rel="icon" href="
|
|
8
|
+
<link rel="icon" href="/modules/ui-design/public/brand/favicon.svg" type="image/svg+xml">
|
|
9
9
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
10
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
11
|
<link rel="stylesheet" href="/builders/style.css?v=2026-07-03-roadmap1">
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
<script src="/builders/dom-utils.js?v=2026-11-05-numbers"></script>
|
|
60
60
|
<script src="/builders/shell-trail.js?v=2026-11-05-numbers"></script>
|
|
61
61
|
<script src="/builders/craft-mode.js?v=2026-11-05-goals"></script>
|
|
62
|
-
<script src="/builders/shell.js?v=2026-11-
|
|
62
|
+
<script src="/builders/shell.js?v=2026-11-07-brand-mark"></script>
|
|
63
63
|
<!-- jump palette (Ctrl/Cmd-K). Optional by design: without it the shell's slot stays hidden. -->
|
|
64
64
|
<script src="/builders/palette.js" defer></script>
|
|
65
65
|
<!-- task-detail.js still owns the #/idea/N and #/blocker/N deep-link overlay
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
|
|
6
6
|
<title>Your sky — {{worldName}}</title>
|
|
7
7
|
<meta name="description" content="Your thinking, drawn from the ledger: every thought you filed as one of five objects, in the goal that caught it, sized by the work it caused.">
|
|
8
|
-
<link rel="icon" href="
|
|
8
|
+
<link rel="icon" href="/modules/ui-design/public/brand/favicon.svg" type="image/svg+xml">
|
|
9
9
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
10
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
11
|
<!-- The faces (Manrope, JetBrains Mono) come from the branding pack's font
|
|
@@ -141,7 +141,7 @@
|
|
|
141
141
|
<script src="/builders/dom-utils.js?v=2026-11-05-numbers"></script>
|
|
142
142
|
<script src="/builders/shell-trail.js?v=2026-11-05-numbers"></script>
|
|
143
143
|
<script src="/builders/craft-mode.js?v=2026-11-05-goals"></script>
|
|
144
|
-
<script src="/builders/shell.js?v=2026-11-
|
|
144
|
+
<script src="/builders/shell.js?v=2026-11-07-brand-mark"></script>
|
|
145
145
|
<script src="/builders/palette.js" defer></script>
|
|
146
146
|
|
|
147
147
|
<script src="/builders/idea-objects.js?v=2026-09-27-split"></script>
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
8
8
|
<title>Tweak a page — {{worldName}}</title>
|
|
9
9
|
<meta name="description" content="Tweak Mode's editor: every word of one page as a single document, typed over in place and saved as you go, then submitted as one batch.">
|
|
10
|
-
<link rel="icon" href="
|
|
10
|
+
<link rel="icon" href="/modules/ui-design/public/brand/favicon.svg" type="image/svg+xml">
|
|
11
11
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
12
12
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
13
13
|
<link rel="stylesheet" href="/builders/style.css?v=2026-07-02-shell1">
|
|
@@ -145,7 +145,7 @@
|
|
|
145
145
|
<script src="/builders/dom-utils.js?v=2026-11-05-numbers"></script>
|
|
146
146
|
<script src="/builders/shell-trail.js?v=2026-11-05-numbers"></script>
|
|
147
147
|
<script src="/builders/craft-mode.js?v=2026-11-05-goals"></script>
|
|
148
|
-
<script src="/builders/shell.js?v=2026-11-
|
|
148
|
+
<script src="/builders/shell.js?v=2026-11-07-brand-mark"></script>
|
|
149
149
|
<script src="/builders/palette.js" defer></script>
|
|
150
150
|
<script src="/builders/brand-holes.js?v=2026-09-29-aqfix"></script>
|
|
151
151
|
<script src="/builders/tweak-editor-lib.js?v=2026-09-29-tw27"></script>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<!-- The hub's origin, for the link from a guild's head in the applications queue to
|
|
9
9
|
its page on the hub (task 1002304). Empty on a vanilla instance: no link. -->
|
|
10
10
|
<meta name="hub-origin" content="{{hubOrigin}}">
|
|
11
|
-
<link rel="icon" href="
|
|
11
|
+
<link rel="icon" href="/modules/ui-design/public/brand/favicon.svg" type="image/svg+xml">
|
|
12
12
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
13
13
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
14
14
|
<link rel="stylesheet" href="/builders/style.css?v=2026-07-02-shell1">
|
|
@@ -271,7 +271,7 @@
|
|
|
271
271
|
<script src="/builders/dom-utils.js?v=2026-11-05-numbers"></script>
|
|
272
272
|
<script src="/builders/shell-trail.js?v=2026-11-05-numbers"></script>
|
|
273
273
|
<script src="/builders/craft-mode.js?v=2026-11-05-goals"></script>
|
|
274
|
-
<script src="/builders/shell.js?v=2026-11-
|
|
274
|
+
<script src="/builders/shell.js?v=2026-11-07-brand-mark"></script>
|
|
275
275
|
<!-- jump palette (Ctrl/Cmd-K). Optional by design: without it the shell's slot stays hidden. -->
|
|
276
276
|
<script src="/builders/palette.js" defer></script>
|
|
277
277
|
<!-- shared component kit (window.OTBKit) — tabs, ledger, pager (task 2166). -->
|
|
@@ -75,11 +75,10 @@ html.wb-open { overflow: hidden; }
|
|
|
75
75
|
letter-spacing: -.01em; text-transform: lowercase; white-space: nowrap;
|
|
76
76
|
}
|
|
77
77
|
/* the mark's ink follows the painting: pale by night, dark by day; the moon stays salmon */
|
|
78
|
-
.
|
|
79
|
-
.wb__planet {
|
|
78
|
+
.wb__mark { --mark-ink: #e2e1e4; }
|
|
79
|
+
.wb__planet { transform-box: fill-box; transform-origin: center; }
|
|
80
80
|
.wb__moonlet { transform-box: view-box; transform-origin: 100px 100px; }
|
|
81
|
-
.wb--day .
|
|
82
|
-
.wb--day .wb__planet { fill: #17181a; }
|
|
81
|
+
.wb--day .wb__mark { --mark-ink: #17181a; }
|
|
83
82
|
.wb--lit .wb__ring { stroke-dasharray: 100; animation: wb-ring 1.5s cubic-bezier(.6, 0, .2, 1) .5s both; }
|
|
84
83
|
.wb--lit .wb__planet { animation: wb-planet 1s cubic-bezier(.3, 1.4, .5, 1) .3s both; }
|
|
85
84
|
.wb--lit .wb__moonlet { animation: wb-orbit 1.6s cubic-bezier(.25, .8, .3, 1) 1.1s both, wb-glow 3.2s ease-in-out 2.7s infinite alternate; }
|
|
@@ -57,10 +57,12 @@
|
|
|
57
57
|
// The banner is the logo, animated (task 1004953; it replaced "Working on the core of <project>"):
|
|
58
58
|
// the ring draws in, the planet settles, the moon glides into the gap and glows. A project with its
|
|
59
59
|
// own logo (theme.logo, ADR 0358) shows that instead, as the sidebar's brand mark does.
|
|
60
|
+
// The parts are referenced one by one from the one mark (task 1005088) so each can move.
|
|
61
|
+
var MARK = '/modules/ui-design/public/brand/mark.svg';
|
|
60
62
|
var MARK_SVG = '<svg class="wb__mark" viewBox="0 0 200 200" aria-hidden="true">' +
|
|
61
|
-
'<
|
|
62
|
-
'<
|
|
63
|
-
'<
|
|
63
|
+
'<use class="wb__ring" href="' + MARK + '#mark-ring"/>' +
|
|
64
|
+
'<use class="wb__planet" href="' + MARK + '#mark-disc"/>' +
|
|
65
|
+
'<use class="wb__moonlet" href="' + MARK + '#mark-dot"/></svg>';
|
|
64
66
|
function logoHtml(branding) {
|
|
65
67
|
var logo = branding && branding.theme && branding.theme.logo;
|
|
66
68
|
var mark = logo ? '<img class="wb__logo" src="' + esc(logo) + '" alt="" width="40" height="40" decoding="async">' : MARK_SVG;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
6
|
<title>Tasks — {{worldName}}</title>
|
|
7
7
|
<meta name="description" content="What {{worldName}} is building right now, and what waits to be claimed.">
|
|
8
|
-
<link rel="icon" href="
|
|
8
|
+
<link rel="icon" href="/modules/ui-design/public/brand/favicon.svg" type="image/svg+xml">
|
|
9
9
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
10
10
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
11
11
|
<link rel="stylesheet" href="/builders/style.css?v=2026-07-02-shell1">
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
<script src="/builders/dom-utils.js?v=2026-11-05-numbers"></script>
|
|
175
175
|
<script src="/builders/shell-trail.js?v=2026-11-05-numbers"></script>
|
|
176
176
|
<script src="/builders/craft-mode.js?v=2026-11-05-goals"></script>
|
|
177
|
-
<script src="/builders/shell.js?v=2026-11-
|
|
177
|
+
<script src="/builders/shell.js?v=2026-11-07-brand-mark"></script>
|
|
178
178
|
<!-- jump palette (Ctrl/Cmd-K). Optional by design: without it the shell's slot stays hidden. -->
|
|
179
179
|
<script src="/builders/palette.js" defer></script>
|
|
180
180
|
<!-- task 1004727: the ONE karma vote control every task/idea list renders -->
|
|
@@ -97,11 +97,7 @@
|
|
|
97
97
|
<header class="shell bar">
|
|
98
98
|
<div class="barLeft">
|
|
99
99
|
<a class="barMark" id="barMark" href="/">
|
|
100
|
-
<svg class="bongosMark" viewBox="0 0 200 200" aria-hidden="true">
|
|
101
|
-
<path class="mr" d="M137 31 A78 78 0 1 0 170 66" fill="none" stroke="#17181a" stroke-width="15" stroke-linecap="round"/>
|
|
102
|
-
<circle class="mp" cx="100" cy="100" r="55" fill="#17181a"/>
|
|
103
|
-
<circle cx="156" cy="46" r="12" style="fill:var(--accent)"/>
|
|
104
|
-
</svg>
|
|
100
|
+
<svg class="bongosMark" viewBox="0 0 200 200" aria-hidden="true"><use href="/modules/ui-design/public/brand/mark.svg#mark"/></svg>
|
|
105
101
|
<span>{{productName}}</span>
|
|
106
102
|
</a>
|
|
107
103
|
</div>
|
|
@@ -576,13 +576,13 @@ p.sec-p{font-size:var(--fs-lede);font-weight:500;color:var(--ink-soft);line-heig
|
|
|
576
576
|
}
|
|
577
577
|
/* the ring and the core: one ink, breathing */
|
|
578
578
|
.loading-mark::before{
|
|
579
|
-
--lm-shape:url("
|
|
579
|
+
--lm-shape:url("/modules/ui-design/public/brand/mark-body.svg");
|
|
580
580
|
background:color-mix(in srgb,var(--ink) 30%,var(--bg-card));
|
|
581
581
|
animation:loading-mark-turn 1.6s cubic-bezier(.45,.05,.55,.95) infinite,loading-mark-breathe .8s ease-in-out infinite alternate-reverse;
|
|
582
582
|
}
|
|
583
583
|
/* the dot: the accent, laid exactly over the mark and turning with it */
|
|
584
584
|
.loading-mark::after{
|
|
585
|
-
--lm-shape:url("
|
|
585
|
+
--lm-shape:url("/modules/ui-design/public/brand/mark-dot.svg");
|
|
586
586
|
background:var(--accent);
|
|
587
587
|
}
|
|
588
588
|
.loading-mark--page{--lm-size:64px;padding:72px 0;gap:16px;}
|
|
@@ -623,11 +623,12 @@ p.sec-p{font-size:var(--fs-lede);font-weight:500;color:var(--ink-soft);line-heig
|
|
|
623
623
|
color:var(--ink);text-decoration:none;text-shadow:var(--type-halo);}
|
|
624
624
|
/* the mark: Ink and one light; its Night ink twin on a dark ground (task 1004846) */
|
|
625
625
|
.barMark svg{width:32px;height:32px;display:block;flex:none;}
|
|
626
|
-
|
|
627
|
-
|
|
626
|
+
/* drawn from the one mark (modules/ui-design/public/brand/mark.svg, task 1005088), coloured by
|
|
627
|
+
--mark-ink (the ring and planet) and --mark-dot (the moon; the accent when unset) */
|
|
628
|
+
.bongosMark{--mark-ink:var(--ink);}
|
|
629
|
+
:root[data-mode="dark"] .bongosMark{--mark-ink:#e2e1e4;}
|
|
628
630
|
@media (prefers-color-scheme: dark){
|
|
629
|
-
:root:not([data-mode="light"]) .bongosMark
|
|
630
|
-
:root:not([data-mode="light"]) .bongosMark .mp{fill:#e2e1e4;}
|
|
631
|
+
:root:not([data-mode="light"]) .bongosMark{--mark-ink:#e2e1e4;}
|
|
631
632
|
}
|
|
632
633
|
.barMark:hover{color:var(--ink);}
|
|
633
634
|
/* the two-tone focus ring on the bar's and the bands' controls (DESIGN.md
|
|
@@ -165,11 +165,7 @@
|
|
|
165
165
|
<header class="shell bar">
|
|
166
166
|
<div class="barLeft">
|
|
167
167
|
<a class="barMark" id="barMark" href="/">
|
|
168
|
-
<svg class="bongosMark" viewBox="0 0 200 200" aria-hidden="true">
|
|
169
|
-
<path class="mr" d="M137 31 A78 78 0 1 0 170 66" fill="none" stroke="#17181a" stroke-width="15" stroke-linecap="round"/>
|
|
170
|
-
<circle class="mp" cx="100" cy="100" r="55" fill="#17181a"/>
|
|
171
|
-
<circle cx="156" cy="46" r="12" style="fill:var(--accent)"/>
|
|
172
|
-
</svg>
|
|
168
|
+
<svg class="bongosMark" viewBox="0 0 200 200" aria-hidden="true"><use href="/modules/ui-design/public/brand/mark.svg#mark"/></svg>
|
|
173
169
|
<span>{{productName}}</span>
|
|
174
170
|
</a>
|
|
175
171
|
</div>
|
|
@@ -70,11 +70,7 @@
|
|
|
70
70
|
<header class="shell bar">
|
|
71
71
|
<div class="barLeft">
|
|
72
72
|
<a class="barMark" id="barMark" href="/">
|
|
73
|
-
<svg class="bongosMark" viewBox="0 0 200 200" aria-hidden="true">
|
|
74
|
-
<path class="mr" d="M137 31 A78 78 0 1 0 170 66" fill="none" stroke="#17181a" stroke-width="15" stroke-linecap="round"/>
|
|
75
|
-
<circle class="mp" cx="100" cy="100" r="55" fill="#17181a"/>
|
|
76
|
-
<circle cx="156" cy="46" r="12" style="fill:var(--accent)"/>
|
|
77
|
-
</svg>
|
|
73
|
+
<svg class="bongosMark" viewBox="0 0 200 200" aria-hidden="true"><use href="/modules/ui-design/public/brand/mark.svg#mark"/></svg>
|
|
78
74
|
<span>{{productName}}</span>
|
|
79
75
|
</a>
|
|
80
76
|
</div>
|