summaryrefslogtreecommitdiff
path: root/public/stylesheets
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-08-15 01:57:41 +0200
committererdgeist <erdgeist@erdgeist.org>2026-08-15 01:57:41 +0200
commitaa984c8c0cad4ac4bff74fc38f60c0e06af6fc50 (patch)
tree6ab72399f3469928578b63f5df0534b05f326b54 /public/stylesheets
parent96cf1945a256c8ef825f9b1af81ca8bee751a0b5 (diff)
Name the radius scale
Four steps: controls, images, cards, pills.
Diffstat (limited to 'public/stylesheets')
-rw-r--r--public/stylesheets/admin.css73
1 files changed, 39 insertions, 34 deletions
diff --git a/public/stylesheets/admin.css b/public/stylesheets/admin.css
index 4afe0cfa..9d96acd0 100644
--- a/public/stylesheets/admin.css
+++ b/public/stylesheets/admin.css
@@ -54,7 +54,12 @@
54 --shadow-widget: 3px 3px 5px light-dark(#b1b1b1, rgba(0, 0, 0, 0.7)); 54 --shadow-widget: 3px 3px 5px light-dark(#b1b1b1, rgba(0, 0, 0, 0.7));
55 --shadow-modal: 0 4px 16px light-dark(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.7)); 55 --shadow-modal: 0 4px 16px light-dark(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.7));
56 56
57 --radius: 6px; 57 /* Radius scale. Controls are nearly square. Images are softer because a
58 photo's own edge is the shape. Cards are the largest. */
59 --radius-control: 2px;
60 --radius-image: 4px;
61 --radius-card: 6px;
62 --radius-pill: 999px;
58 63
59 /* The desktop label band: #wrapper's left gutter, which row labels reach 64 /* The desktop label band: #wrapper's left gutter, which row labels reach
60 back into. --label-column plus --label-gap must equal --page-gutter, or 65 back into. --label-column plus --label-gap must equal --page-gutter, or
@@ -118,7 +123,7 @@ textarea {
118 font-size: var(--text-base); 123 font-size: var(--text-base);
119 font-family: Helvetica, Arial, sans-serif; 124 font-family: Helvetica, Arial, sans-serif;
120 border: 1px solid var(--field-border); 125 border: 1px solid var(--field-border);
121 border-radius: 2px; 126 border-radius: var(--radius-control);
122} 127}
123 128
124select { 129select {
@@ -164,7 +169,7 @@ input[type=radio] {
164 margin: 2rem auto; 169 margin: 2rem auto;
165 padding: 1.25rem; 170 padding: 1.25rem;
166 border: 1px solid var(--border); 171 border: 1px solid var(--border);
167 border-radius: var(--radius); 172 border-radius: var(--radius-card);
168} 173}
169 174
170#login_form input[type=submit] { 175#login_form input[type=submit] {
@@ -252,7 +257,7 @@ span.warning {
252 background-color: var(--accent-surface); 257 background-color: var(--accent-surface);
253 letter-spacing: 1px; 258 letter-spacing: 1px;
254 padding: 1px 5px; 259 padding: 1px 5px;
255 border-radius: 2px; 260 border-radius: var(--radius-control);
256} 261}
257 262
258span.warning a { 263span.warning a {
@@ -280,7 +285,7 @@ span.warning a {
280 margin-bottom: 1rem; 285 margin-bottom: 1rem;
281 padding: 0.5rem 0.75rem; 286 padding: 0.5rem 0.75rem;
282 border: 1px solid var(--accent); 287 border: 1px solid var(--accent);
283 border-radius: var(--radius); 288 border-radius: var(--radius-card);
284 background-color: var(--accent-surface); 289 background-color: var(--accent-surface);
285} 290}
286 291
@@ -334,7 +339,7 @@ div.pagination span.gap {
334 min-width: 1.75rem; 339 min-width: 1.75rem;
335 height: 1.75rem; 340 height: 1.75rem;
336 padding: 0 0.2rem; 341 padding: 0 0.2rem;
337 border-radius: 4px; 342 border-radius: var(--radius-control);
338 font-style: normal; 343 font-style: normal;
339} 344}
340 345
@@ -380,7 +385,7 @@ form.button_to button[type="submit"] {
380 display: inline-flex; 385 display: inline-flex;
381 box-sizing: border-box; 386 box-sizing: border-box;
382 border: 1px solid transparent; 387 border: 1px solid transparent;
383 border-radius: 2px; 388 border-radius: var(--radius-control);
384 align-items: center; 389 align-items: center;
385 gap: 0.5rem; 390 gap: 0.5rem;
386 -webkit-appearance: none; 391 -webkit-appearance: none;
@@ -451,7 +456,7 @@ input[type="submit"] {
451 appearance: none; 456 appearance: none;
452 background: none; 457 background: none;
453 border: 1px solid var(--text); 458 border: 1px solid var(--text);
454 border-radius: 2px; 459 border-radius: var(--radius-control);
455 padding: 4px 12px; 460 padding: 4px 12px;
456 font: inherit; 461 font: inherit;
457 font-weight: bold; 462 font-weight: bold;
@@ -486,7 +491,7 @@ input[type="submit"]:hover {
486 width: 2.75rem; 491 width: 2.75rem;
487 height: 2.75rem; 492 height: 2.75rem;
488 padding: 0; 493 padding: 0;
489 border-radius: 2px; 494 border-radius: var(--radius-control);
490} 495}
491 496
492#main_navigation a:hover, 497#main_navigation a:hover,
@@ -559,7 +564,7 @@ form.button_to svg {
559 box-sizing: border-box; 564 box-sizing: border-box;
560 padding: 10px 14px; 565 padding: 10px 14px;
561 font-size: var(--text-lg); 566 font-size: var(--text-lg);
562 border-radius: 2px; 567 border-radius: var(--radius-control);
563} 568}
564 569
565.button_row { 570.button_row {
@@ -589,7 +594,7 @@ form.button_to svg {
589 min-width: 0; 594 min-width: 0;
590 box-sizing: border-box; 595 box-sizing: border-box;
591 border: 1px solid var(--hairline); 596 border: 1px solid var(--hairline);
592 border-radius: var(--radius); 597 border-radius: var(--radius-card);
593 padding: 0.5rem 0.75rem; 598 padding: 0.5rem 0.75rem;
594} 599}
595 600
@@ -746,7 +751,7 @@ form.button_to svg {
746 color: var(--diff-del-fg); 751 color: var(--diff-del-fg);
747 text-decoration: line-through; 752 text-decoration: line-through;
748 padding: 0 2px; 753 padding: 0 2px;
749 border-radius: 2px; 754 border-radius: var(--radius-control);
750} 755}
751 756
752#diffview ins { 757#diffview ins {
@@ -754,7 +759,7 @@ form.button_to svg {
754 color: var(--diff-ins-fg); 759 color: var(--diff-ins-fg);
755 text-decoration: none; 760 text-decoration: none;
756 padding: 0 2px; 761 padding: 0 2px;
757 border-radius: 2px; 762 border-radius: var(--radius-control);
758} 763}
759 764
760#diffview .diff_side_by_side { 765#diffview .diff_side_by_side {
@@ -915,7 +920,7 @@ form.button_to svg {
915 justify-content: center; 920 justify-content: center;
916 padding: 0.3rem; 921 padding: 0.3rem;
917 border: 1px solid var(--border); 922 border: 1px solid var(--border);
918 border-radius: 2px; 923 border-radius: var(--radius-control);
919 background-color: var(--surface-raised); 924 background-color: var(--surface-raised);
920 color: var(--text); 925 color: var(--text);
921 text-decoration: none; 926 text-decoration: none;
@@ -1055,7 +1060,7 @@ form.button_to svg {
1055 1060
1056.layout_row_content.info_group { 1061.layout_row_content.info_group {
1057 border: 1px solid var(--hairline); 1062 border: 1px solid var(--hairline);
1058 border-radius: var(--radius); 1063 border-radius: var(--radius-card);
1059 padding: 0.5rem 0.75rem; 1064 padding: 0.5rem 0.75rem;
1060} 1065}
1061 1066
@@ -1064,7 +1069,7 @@ form.button_to svg {
1064 align-items: center; 1069 align-items: center;
1065 gap: 0.35rem; 1070 gap: 0.35rem;
1066 border: 1px solid var(--border); 1071 border: 1px solid var(--border);
1067 border-radius: 2px; 1072 border-radius: var(--radius-control);
1068 padding: 4px 12px; 1073 padding: 4px 12px;
1069 font-weight: bold; 1074 font-weight: bold;
1070 color: var(--text-muted); 1075 color: var(--text-muted);
@@ -1186,7 +1191,7 @@ form.button_to svg {
1186 height: 2.25rem; 1191 height: 2.25rem;
1187 width: 100%; 1192 width: 100%;
1188 max-width: 22rem; 1193 max-width: 22rem;
1189 border-radius: 2px; 1194 border-radius: var(--radius-control);
1190} 1195}
1191 1196
1192.search_form .action_button { 1197.search_form .action_button {
@@ -1266,7 +1271,7 @@ form.button_to svg {
1266 align-items: center; 1271 align-items: center;
1267 padding: 0.3rem; 1272 padding: 0.3rem;
1268 border: 1px solid var(--border); 1273 border: 1px solid var(--border);
1269 border-radius: 2px; 1274 border-radius: var(--radius-control);
1270 background-color: var(--surface); 1275 background-color: var(--surface);
1271 -webkit-appearance: none; 1276 -webkit-appearance: none;
1272 appearance: none; 1277 appearance: none;
@@ -1487,7 +1492,7 @@ form.button_to svg {
1487 -webkit-appearance: none; 1492 -webkit-appearance: none;
1488 appearance: none; 1493 appearance: none;
1489 border: 1px solid var(--text); 1494 border: 1px solid var(--text);
1490 border-radius: 2px; 1495 border-radius: var(--radius-control);
1491 font-weight: bold; 1496 font-weight: bold;
1492 text-decoration: none; 1497 text-decoration: none;
1493 color: var(--text); 1498 color: var(--text);
@@ -1584,7 +1589,7 @@ input#tag_list {
1584 padding: 0.5rem; 1589 padding: 0.5rem;
1585 background-color: var(--surface-raised); 1590 background-color: var(--surface-raised);
1586 border: 1px solid var(--border); 1591 border: 1px solid var(--border);
1587 border-radius: var(--radius); 1592 border-radius: var(--radius-card);
1588} 1593}
1589 1594
1590.action_hint > summary { 1595.action_hint > summary {
@@ -1615,7 +1620,7 @@ input#tag_list {
1615 color: var(--text-muted); 1620 color: var(--text-muted);
1616 background-color: var(--surface-raised); 1621 background-color: var(--surface-raised);
1617 border: 1px solid var(--border); 1622 border: 1px solid var(--border);
1618 border-radius: var(--radius); 1623 border-radius: var(--radius-card);
1619} 1624}
1620 1625
1621/* ============================================================ 1626/* ============================================================
@@ -1644,7 +1649,7 @@ input#tag_list {
1644.search_tag_pill { 1649.search_tag_pill {
1645 display: inline-block; 1650 display: inline-block;
1646 padding: 2px 10px; 1651 padding: 2px 10px;
1647 border-radius: 999px; 1652 border-radius: var(--radius-pill);
1648 background-color: var(--surface-tint); 1653 background-color: var(--surface-tint);
1649 font-size: var(--text-sm); 1654 font-size: var(--text-sm);
1650 text-decoration: none; 1655 text-decoration: none;
@@ -1661,7 +1666,7 @@ input#tag_list {
1661 1666
1662.tag_pill { 1667.tag_pill {
1663 background: var(--surface-tint); 1668 background: var(--surface-tint);
1664 border-radius: 999px; 1669 border-radius: var(--radius-pill);
1665 padding: 0.15rem 0.75rem; 1670 padding: 0.15rem 0.75rem;
1666 font-size: var(--text-sm); 1671 font-size: var(--text-sm);
1667} 1672}
@@ -1675,7 +1680,7 @@ input#tag_list {
1675 top: 3.5rem; 1680 top: 3.5rem;
1676 left: 0; 1681 left: 0;
1677 width: min(520px, 90vw); 1682 width: min(520px, 90vw);
1678 border-radius: 2px; 1683 border-radius: var(--radius-control);
1679 border: 1px solid var(--text); 1684 border: 1px solid var(--text);
1680 box-shadow: var(--shadow-widget); 1685 box-shadow: var(--shadow-widget);
1681 background-color: var(--surface); 1686 background-color: var(--surface);
@@ -1687,7 +1692,7 @@ input#tag_list {
1687 width: 100%; 1692 width: 100%;
1688 box-sizing: border-box; 1693 box-sizing: border-box;
1689 padding: 8px 12px; 1694 padding: 8px 12px;
1690 border-radius: 2px; 1695 border-radius: var(--radius-control);
1691 font-size: var(--text-lg); 1696 font-size: var(--text-lg);
1692} 1697}
1693 1698
@@ -1749,7 +1754,7 @@ input#tag_list {
1749 max-width: 44rem; 1754 max-width: 44rem;
1750 1755
1751 border: 1px solid var(--hairline); 1756 border: 1px solid var(--hairline);
1752 border-radius: var(--radius); 1757 border-radius: var(--radius-card);
1753 1758
1754 padding: 0.5rem; 1759 padding: 0.5rem;
1755} 1760}
@@ -1900,7 +1905,7 @@ input#tag_list {
1900 align-items: center; 1905 align-items: center;
1901 gap: 0.25rem; 1906 gap: 0.25rem;
1902 border: 1px solid var(--hairline); 1907 border: 1px solid var(--hairline);
1903 border-radius: 6px; 1908 border-radius: var(--radius-card);
1904 padding: 4px; 1909 padding: 4px;
1905} 1910}
1906 1911
@@ -1909,7 +1914,7 @@ input#tag_list {
1909 width: 60px; 1914 width: 60px;
1910 height: 60px; 1915 height: 60px;
1911 object-fit: cover; 1916 object-fit: cover;
1912 border-radius: 4px; 1917 border-radius: var(--radius-image);
1913} 1918}
1914 1919
1915.thumbnail_list li .headline_indicator { 1920.thumbnail_list li .headline_indicator {
@@ -1976,7 +1981,7 @@ input#tag_list {
1976 width: 40px; 1981 width: 40px;
1977 height: 40px; 1982 height: 40px;
1978 object-fit: cover; 1983 object-fit: cover;
1979 border-radius: 4px; 1984 border-radius: var(--radius-image);
1980} 1985}
1981 1986
1982.related_asset_set_headline { 1987.related_asset_set_headline {
@@ -2011,7 +2016,7 @@ input#tag_list {
2011 2016
2012#asset_dropzone { 2017#asset_dropzone {
2013 border: 2px dashed var(--border); 2018 border: 2px dashed var(--border);
2014 border-radius: 6px; 2019 border-radius: var(--radius-card);
2015 padding: 1.5rem; 2020 padding: 1.5rem;
2016} 2021}
2017 2022
@@ -2051,7 +2056,7 @@ input#tag_list {
2051 width: 100%; 2056 width: 100%;
2052 height: 612px; 2057 height: 612px;
2053 border: 0.5px solid var(--border); 2058 border: 0.5px solid var(--border);
2054 border-radius: var(--radius); 2059 border-radius: var(--radius-card);
2055} 2060}
2056 2061
2057.body_toolbar_row { 2062.body_toolbar_row {
@@ -2072,7 +2077,7 @@ input#tag_list {
2072 transform: translateX(-50%); 2077 transform: translateX(-50%);
2073 background: var(--surface); 2078 background: var(--surface);
2074 border: 1px solid var(--border); 2079 border: 1px solid var(--border);
2075 border-radius: 8px; 2080 border-radius: var(--radius-card);
2076 padding: 1rem; 2081 padding: 1rem;
2077 max-width: 480px; 2082 max-width: 480px;
2078 max-height: 70vh; 2083 max-height: 70vh;
@@ -2096,7 +2101,7 @@ input#tag_list {
2096 width: 80px; 2101 width: 80px;
2097 height: 80px; 2102 height: 80px;
2098 object-fit: cover; 2103 object-fit: cover;
2099 border-radius: 4px; 2104 border-radius: var(--radius-image);
2100 cursor: pointer; 2105 cursor: pointer;
2101 border: 2px solid transparent; 2106 border: 2px solid transparent;
2102 display: block; 2107 display: block;
@@ -2111,7 +2116,7 @@ input#tag_list {
2111 color: var(--headline-badge-fg); 2116 color: var(--headline-badge-fg);
2112 font-size: var(--badge-text); 2117 font-size: var(--badge-text);
2113 text-align: center; 2118 text-align: center;
2114 border-radius: 3px; 2119 border-radius: var(--radius-image);
2115 padding: 1px 0; 2120 padding: 1px 0;
2116 pointer-events: none; 2121 pointer-events: none;
2117} 2122}