Initial commit: Tonalmine, a Material Design 3 theme for Redmine 7

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
surtic86
2026-10-01 06:05:29 +02:00
co-authored by Claude Opus 5.5
commit 06cd1db99c
47 changed files with 4302 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
/*
* One type scale for the whole app. Core Redmine sets ~60 relative sizes (0.8125rem, 0.9em, 93%, …)
* that compound when nested, e.g. the sidebar at 13px and its "Add" link at 11.7px.
* Here they are mapped onto the M3 scale: 14px (body-medium) for anything readable,
* 12px (body-small) for secondary meta text, headings on the heading scale.
* e2e/check-font-sizes.mjs reports anything that falls off the scale again.
*/
/* 14px: content, lists, actions, sidebars, forms */
#sidebar, .contextual, .contextual input, .contextual select, .buttons, #query_form_content,
#query_form_with_buttons > p.contextual, .query-totals, span.search_for_watchers, span.add_attachment,
table.issues td.block_column, tr.message td.last_message, table.boards td.last-message,
.tabular.settings p, #errorExplanation ul, .conflict-details, div.wiki ul.toc a,
#document-list .document-item .wiki.description, table.permissions td.role, #workflow_form table select,
tr.group span.totals, tr.group a.toggle-all, ul.properties, #sidebar h3 + .contextual, #search-results dd {
font-size: 0.875rem;
}
/* Parts of a number (hours "8:00") keep the number's size */
.hours-dec, table.time-entries td.hours .hours-dec, table#time-report .hours-dec, .total-hours span.hours-int {
font-size: inherit;
}
/* 12px: secondary meta text (who/when, stats, breadcrumbs, footers of blocks) */
p.breadcrumb, p.subtitle, p.footnote, div.issue p.author, div.issue div.subject p,
#issue_tree .issues-stat, #relations .issues-stat, .wiki-update-info, p.other-formats, em.info,
div.attachments span.author, table.files tr.file td.digest, tr.entry td.size,
table.plugins span.description, table.plugins span.url, #document-list .document-item .updated_on,
.cal .calbody, div.tooltip:hover span.tip, div.issue.details .reaction, div.message .reaction, div.news .reaction {
font-size: 0.75rem;
}
div.issue span.private, div.journal span.private { font-size: 0.6875rem; }
/* Headings */
.wiki h1, #content .wiki h1 { font: var(--md-sys-typescale-headline-small); }
.wiki h2, #content .wiki h2 { font: var(--md-sys-typescale-title-large); }
.wiki h3, #content .wiki h3, div#roadmap .wiki h1, div#roadmap .wiki h2 { font: var(--md-sys-typescale-title-medium); letter-spacing: var(--md-sys-typescale-title-medium-tracking); }
.wiki h4, #content .wiki h4 { font: var(--md-sys-typescale-title-small); letter-spacing: var(--md-sys-typescale-title-small-tracking); }
#document-list .document-item h4.title { font: var(--md-sys-typescale-title-medium); }
.total-hours { font: var(--md-sys-typescale-title-medium); }
.cal .calbody p.day-num { font: var(--md-sys-typescale-label-large); }