/* The six Keepsake palettes. Each is Keepsake in other colours: the page keeps data-skin="keepsake", so every
   Keepsake rule still applies, and data-palette names the colours. Every value is one of the eight brand colours or a
   mix of them (the comment names it); the right green and wrong red stay fixed. Keepsake's and Clean's own values
   live in tokens.css and clean.css; data-palette="keepsake" or "clean" matches nothing here.
   Brand colours: Pocket navy #182e4d, Fuji blue #55698f, Sky blue #c3d9e6, Graphite #404144, Stone grey #9d9b98, Paper ivory #fbf6ed, Deep rose #93546b, Book pink #ec9cad.
   tests/build/skin-palette-contrast.test.mjs checks every text/background pair below against WCAG AA. */

/* 1. Navy Sky */
[data-skin="keepsake"][data-palette="navy-sky"] {
  --ss-color-paper: #fbf6ed; /* Paper ivory */
  --ss-color-panel: #fbf6ed; /* Paper ivory */
  --ss-color-input: #fbf6ed; /* Paper ivory */
  --ss-bevel-light: #fbf6ed; /* Paper ivory */
  --ss-color-bg: #eaedeb; /* Sky blue 30% on Paper ivory */
  --ss-color-surface: #eaedeb; /* Sky blue 30% on Paper ivory */
  --ss-color-shell: #eaedeb; /* Sky blue 30% on Paper ivory */
  --ss-color-stage: #c8ced2; /* (Sky blue 30% on Paper ivory) 84% on Pocket navy */
  --ss-color-ink: #182e4d; /* Pocket navy */
  --ss-color-ink-soft: #55698f; /* Fuji blue */
  --ss-color-border: #182e4d; /* Pocket navy */
  --ss-color-border-soft: #9d9b98; /* Stone grey */
  --ss-color-tan-border: #9d9b98; /* Stone grey */
  --ss-color-tan-border-soft: #d5d2cb; /* Stone grey 40% on Paper ivory */
  --ss-language-tab-frame: #182e4d; /* Pocket navy */
  --ss-color-pink: #ec9cad; /* Book pink */
  --ss-color-pink-strong: #93546b; /* Deep rose */
  --ss-color-pink-soft: #f7dbda; /* Book pink 30% on Paper ivory */
  --ss-color-dock-selected: #ec9cad; /* Book pink */
  --ss-color-purple: #182e4d; /* Pocket navy */
  --ss-color-purple-light: #3a4c65; /* Pocket navy 85% on Paper ivory */
  --ss-color-purple-dark: #182e4d; /* Pocket navy */
  --ss-color-purple-soft: #dfe8ea; /* Sky blue 50% on Paper ivory */
  --ss-titlebar-bevel-light: #516075; /* Pocket navy 75% on Paper ivory */
  --ss-titlebar-bevel-shade: #283649; /* Pocket navy 60% on Graphite */
  --ss-color-title: #fbf6ed; /* Paper ivory */
  --ss-close-face: #fbf6ed; /* Paper ivory */
  --ss-color-shadow: #182e4d; /* Pocket navy */
  --ss-color-backdrop: rgba(24, 46, 77, 0.5); /* Pocket navy at 50% opacity */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(24, 46, 77, 0.4); /* bevels; drop shadow Pocket navy at 40% opacity */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(24, 46, 77, 0.38); /* Stone grey inner shade; Pocket navy at 38% opacity */
  --ss-role-focus: #182e4d; /* Pocket navy */
  --ss-role-hover-edge: #182e4d; /* Pocket navy */
  --ss-role-tag-ink: #182e4d; /* Pocket navy */
  --ss-role-study-card-edge: #182e4d; /* Pocket navy */
  --ss-role-progress-done: #55698f; /* Fuji blue */
  --ss-role-notice-edge: #182e4d; /* Pocket navy */
  --ss-role-highlight: #f7dbda; /* Book pink 30% on Paper ivory */
  --ss-role-study-card: #182e4d; /* Pocket navy */
  --ss-shadow: 2px 3px 0 rgba(24, 46, 77, 0.42); /* Pocket navy at 42% opacity */
  --ss-shadow-soft: 1px 2px 0 rgba(24, 46, 77, 0.24); /* Pocket navy at 24% opacity */
  --ss-shadow-hard: 3px 3px 0 rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-shadow-lifted: 3px 3px 0 rgba(24, 46, 77, 0.9), 7px 8px 14px rgba(24, 46, 77, 0.3); /* Pocket navy at 90% and 30% opacity */
  --ss-window-drop: rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-role-on-selected: #182e4d; /* Pocket navy */
  --ss-role-study-card-ink: #fbf6ed; /* Paper ivory */
  --ss-panel-calendar: #fbf6ed; /* Paper ivory */
  --ss-panel-kanji: #fbf6ed; /* Paper ivory */
  --ss-panel-vocabulary: #fbf6ed; /* Paper ivory */
  --ss-color-ink-faint: #a0a8b9; /* Fuji blue 55% on Paper ivory */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #c3d9e6; /* Sky blue */
  --ss-strip-calendar-ink: #182e4d; /* Pocket navy */
  --ss-strip-kanji: #c3d9e6; /* Sky blue */
  --ss-strip-kanji-ink: #182e4d; /* Pocket navy */
  --ss-strip-vocabulary: #c3d9e6; /* Sky blue */
  --ss-strip-vocabulary-ink: #182e4d; /* Pocket navy */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
/* The window rim (keepsake-frame.svg) in this palette: outline Pocket navy, highlight Paper ivory, rim Sky blue 30% on Paper ivory. */
[data-skin="keepsake"][data-palette="navy-sky"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%23182e4d' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23eaedeb' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* 2. Fuji Sky */
[data-skin="keepsake"][data-palette="fuji-sky"] {
  --ss-color-paper: #fbf6ed; /* Paper ivory */
  --ss-color-panel: #fbf6ed; /* Paper ivory */
  --ss-color-input: #fbf6ed; /* Paper ivory */
  --ss-bevel-light: #fbf6ed; /* Paper ivory */
  --ss-color-bg: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-color-surface: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-color-shell: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-color-stage: #c4d1db; /* (Sky blue 60% on Paper ivory) 84% on Fuji blue */
  --ss-color-ink: #182e4d; /* Pocket navy */
  --ss-color-ink-soft: #4f6388; /* Fuji blue 90% on Pocket navy */
  --ss-color-border: #182e4d; /* Pocket navy */
  --ss-color-border-soft: #9d9b98; /* Stone grey */
  --ss-color-tan-border: #9d9b98; /* Stone grey */
  --ss-color-tan-border-soft: #d5d2cb; /* Stone grey 40% on Paper ivory */
  --ss-language-tab-frame: #182e4d; /* Pocket navy */
  --ss-color-pink: #ec9cad; /* Book pink */
  --ss-color-pink-strong: #93546b; /* Deep rose */
  --ss-color-pink-soft: #f7dbda; /* Book pink 30% on Paper ivory */
  --ss-color-dock-selected: #ec9cad; /* Book pink */
  --ss-color-purple: #55698f; /* Fuji blue */
  --ss-color-purple-light: #6e7e9d; /* Fuji blue 85% on Paper ivory */
  --ss-color-purple-dark: #55698f; /* Fuji blue */
  --ss-color-purple-soft: #edefeb; /* Sky blue 25% on Paper ivory */
  --ss-titlebar-bevel-light: #7f8ca7; /* Fuji blue 75% on Paper ivory */
  --ss-titlebar-bevel-shade: #3d5175; /* Fuji blue 60% on Pocket navy */
  --ss-color-title: #fbf6ed; /* Paper ivory */
  --ss-close-face: #fbf6ed; /* Paper ivory */
  --ss-color-shadow: #182e4d; /* Pocket navy */
  --ss-color-backdrop: rgba(24, 46, 77, 0.5); /* Pocket navy at 50% opacity */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(24, 46, 77, 0.4); /* bevels; drop shadow Pocket navy at 40% opacity */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(24, 46, 77, 0.38); /* Stone grey inner shade; Pocket navy at 38% opacity */
  --ss-role-focus: #182e4d; /* Pocket navy */
  --ss-role-hover-edge: #182e4d; /* Pocket navy */
  --ss-role-tag-ink: #182e4d; /* Pocket navy */
  --ss-role-study-card-edge: #182e4d; /* Pocket navy */
  --ss-role-progress-done: #55698f; /* Fuji blue */
  --ss-role-notice-edge: #182e4d; /* Pocket navy */
  --ss-role-highlight: #f7dbda; /* Book pink 30% on Paper ivory */
  --ss-role-study-card: #edefeb; /* Sky blue 25% on Paper ivory */
  --ss-shadow: 2px 3px 0 rgba(24, 46, 77, 0.42); /* Pocket navy at 42% opacity */
  --ss-shadow-soft: 1px 2px 0 rgba(24, 46, 77, 0.24); /* Pocket navy at 24% opacity */
  --ss-shadow-hard: 3px 3px 0 rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-shadow-lifted: 3px 3px 0 rgba(24, 46, 77, 0.9), 7px 8px 14px rgba(24, 46, 77, 0.3); /* Pocket navy at 90% and 30% opacity */
  --ss-window-drop: rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-role-on-selected: #182e4d; /* Pocket navy */
  --ss-role-study-card-ink: #182e4d; /* Pocket navy */
  --ss-panel-calendar: #fbf6ed; /* Paper ivory */
  --ss-panel-kanji: #fbf6ed; /* Paper ivory */
  --ss-panel-vocabulary: #fbf6ed; /* Paper ivory */
  --ss-color-ink-faint: #9ca5b5; /* (Fuji blue 90% on Pocket navy) 55% on Paper ivory */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #55698f; /* Fuji blue */
  --ss-strip-calendar-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-kanji: #55698f; /* Fuji blue */
  --ss-strip-kanji-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-vocabulary: #55698f; /* Fuji blue */
  --ss-strip-vocabulary-ink: #fbf6ed; /* Paper ivory */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
/* The window rim (keepsake-frame.svg) in this palette: outline Fuji blue, highlight Paper ivory, rim Sky blue 60% on Paper ivory. */
[data-skin="keepsake"][data-palette="fuji-sky"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%2355698f' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23d9e5e9' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* 3. Navy Ivory */
[data-skin="keepsake"][data-palette="navy-ivory"] {
  --ss-color-paper: #fbf6ed; /* Paper ivory */
  --ss-color-panel: #e8e4dc; /* Stone grey 20% on Paper ivory */
  --ss-color-input: #fbf6ed; /* Paper ivory */
  --ss-bevel-light: #fbf6ed; /* Paper ivory */
  --ss-color-bg: #fbf6ed; /* Paper ivory */
  --ss-color-surface: #fbf6ed; /* Paper ivory */
  --ss-color-shell: #fbf6ed; /* Paper ivory */
  --ss-color-stage: #d7d6d3; /* Paper ivory 84% on Pocket navy */
  --ss-color-ink: #182e4d; /* Pocket navy */
  --ss-color-ink-soft: #4f6388; /* Fuji blue 90% on Pocket navy */
  --ss-color-border: #182e4d; /* Pocket navy */
  --ss-color-border-soft: #9d9b98; /* Stone grey */
  --ss-color-tan-border: #9d9b98; /* Stone grey */
  --ss-color-tan-border-soft: #d5d2cb; /* Stone grey 40% on Paper ivory */
  --ss-language-tab-frame: #182e4d; /* Pocket navy */
  --ss-color-pink: #182e4d; /* Pocket navy */
  --ss-color-pink-strong: #182e4d; /* Pocket navy */
  --ss-color-pink-soft: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-color-dock-selected: #182e4d; /* Pocket navy */
  --ss-color-purple: #182e4d; /* Pocket navy */
  --ss-color-purple-light: #3a4c65; /* Pocket navy 85% on Paper ivory */
  --ss-color-purple-dark: #182e4d; /* Pocket navy */
  --ss-color-purple-soft: #e2e9ea; /* Sky blue 45% on Paper ivory */
  --ss-titlebar-bevel-light: #516075; /* Pocket navy 75% on Paper ivory */
  --ss-titlebar-bevel-shade: #283649; /* Pocket navy 60% on Graphite */
  --ss-color-title: #fbf6ed; /* Paper ivory */
  --ss-close-face: #fbf6ed; /* Paper ivory */
  --ss-color-shadow: #182e4d; /* Pocket navy */
  --ss-color-backdrop: rgba(24, 46, 77, 0.5); /* Pocket navy at 50% opacity */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(24, 46, 77, 0.4); /* bevels; drop shadow Pocket navy at 40% opacity */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(24, 46, 77, 0.38); /* Stone grey inner shade; Pocket navy at 38% opacity */
  --ss-role-focus: #182e4d; /* Pocket navy */
  --ss-role-hover-edge: #182e4d; /* Pocket navy */
  --ss-role-tag-ink: #182e4d; /* Pocket navy */
  --ss-role-study-card-edge: #182e4d; /* Pocket navy */
  --ss-role-progress-done: #182e4d; /* Pocket navy */
  --ss-role-notice-edge: #182e4d; /* Pocket navy */
  --ss-role-highlight: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-role-study-card: #182e4d; /* Pocket navy */
  --ss-shadow: 2px 3px 0 rgba(24, 46, 77, 0.42); /* Pocket navy at 42% opacity */
  --ss-shadow-soft: 1px 2px 0 rgba(24, 46, 77, 0.24); /* Pocket navy at 24% opacity */
  --ss-shadow-hard: 3px 3px 0 rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-shadow-lifted: 3px 3px 0 rgba(24, 46, 77, 0.9), 7px 8px 14px rgba(24, 46, 77, 0.3); /* Pocket navy at 90% and 30% opacity */
  --ss-window-drop: rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-role-on-selected: #fbf6ed; /* Paper ivory */
  --ss-role-study-card-ink: #fbf6ed; /* Paper ivory */
  --ss-panel-calendar: #e8e4dc; /* Stone grey 20% on Paper ivory */
  --ss-panel-kanji: #e8e4dc; /* Stone grey 20% on Paper ivory */
  --ss-panel-vocabulary: #e8e4dc; /* Stone grey 20% on Paper ivory */
  --ss-color-ink-faint: #9ca5b5; /* (Fuji blue 90% on Pocket navy) 55% on Paper ivory */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #55698f; /* Fuji blue */
  --ss-strip-calendar-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-kanji: #55698f; /* Fuji blue */
  --ss-strip-kanji-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-vocabulary: #55698f; /* Fuji blue */
  --ss-strip-vocabulary-ink: #fbf6ed; /* Paper ivory */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
/* The window rim (keepsake-frame.svg) in this palette: outline Pocket navy, highlight Paper ivory, rim Paper ivory. */
[data-skin="keepsake"][data-palette="navy-ivory"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%23182e4d' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* 4. Fuji Headers */
[data-skin="keepsake"][data-palette="fuji-headers"] {
  --ss-color-paper: #fbf6ed; /* Paper ivory */
  --ss-color-panel: #fbf6ed; /* Paper ivory */
  --ss-color-input: #fbf6ed; /* Paper ivory */
  --ss-bevel-light: #fbf6ed; /* Paper ivory */
  --ss-color-bg: #f0ebe3; /* Stone grey 12% on Paper ivory */
  --ss-color-surface: #f0ebe3; /* Stone grey 12% on Paper ivory */
  --ss-color-shell: #f0ebe3; /* Stone grey 12% on Paper ivory */
  --ss-color-stage: #d7d6d6; /* (Stone grey 12% on Paper ivory) 84% on Fuji blue */
  --ss-color-ink: #182e4d; /* Pocket navy */
  --ss-color-ink-soft: #55698f; /* Fuji blue */
  --ss-color-border: #182e4d; /* Pocket navy */
  --ss-color-border-soft: #9d9b98; /* Stone grey */
  --ss-color-tan-border: #9d9b98; /* Stone grey */
  --ss-color-tan-border-soft: #d5d2cb; /* Stone grey 40% on Paper ivory */
  --ss-language-tab-frame: #182e4d; /* Pocket navy */
  --ss-color-pink: #c3d9e6; /* Sky blue */
  --ss-color-pink-strong: #55698f; /* Fuji blue */
  --ss-color-pink-soft: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-color-dock-selected: #c3d9e6; /* Sky blue */
  --ss-color-purple: #55698f; /* Fuji blue */
  --ss-color-purple-light: #6e7e9d; /* Fuji blue 85% on Paper ivory */
  --ss-color-purple-dark: #55698f; /* Fuji blue */
  --ss-color-purple-soft: #dddddc; /* Fuji blue 18% on Paper ivory */
  --ss-titlebar-bevel-light: #7f8ca7; /* Fuji blue 75% on Paper ivory */
  --ss-titlebar-bevel-shade: #3d5175; /* Fuji blue 60% on Pocket navy */
  --ss-color-title: #fbf6ed; /* Paper ivory */
  --ss-close-face: #fbf6ed; /* Paper ivory */
  --ss-color-shadow: #182e4d; /* Pocket navy */
  --ss-color-backdrop: rgba(24, 46, 77, 0.5); /* Pocket navy at 50% opacity */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(24, 46, 77, 0.4); /* bevels; drop shadow Pocket navy at 40% opacity */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(24, 46, 77, 0.38); /* Stone grey inner shade; Pocket navy at 38% opacity */
  --ss-role-focus: #182e4d; /* Pocket navy */
  --ss-role-hover-edge: #182e4d; /* Pocket navy */
  --ss-role-tag-ink: #182e4d; /* Pocket navy */
  --ss-role-study-card-edge: #182e4d; /* Pocket navy */
  --ss-role-progress-done: #55698f; /* Fuji blue */
  --ss-role-notice-edge: #182e4d; /* Pocket navy */
  --ss-role-highlight: #d9e5e9; /* Sky blue 60% on Paper ivory */
  --ss-role-study-card: #dddddc; /* Fuji blue 18% on Paper ivory */
  --ss-shadow: 2px 3px 0 rgba(24, 46, 77, 0.42); /* Pocket navy at 42% opacity */
  --ss-shadow-soft: 1px 2px 0 rgba(24, 46, 77, 0.24); /* Pocket navy at 24% opacity */
  --ss-shadow-hard: 3px 3px 0 rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-shadow-lifted: 3px 3px 0 rgba(24, 46, 77, 0.9), 7px 8px 14px rgba(24, 46, 77, 0.3); /* Pocket navy at 90% and 30% opacity */
  --ss-window-drop: rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-role-on-selected: #182e4d; /* Pocket navy */
  --ss-role-study-card-ink: #182e4d; /* Pocket navy */
  --ss-panel-calendar: #fbf6ed; /* Paper ivory */
  --ss-panel-kanji: #fbf6ed; /* Paper ivory */
  --ss-panel-vocabulary: #fbf6ed; /* Paper ivory */
  --ss-color-ink-faint: #a0a8b9; /* Fuji blue 55% on Paper ivory */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #55698f; /* Fuji blue */
  --ss-strip-calendar-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-kanji: #55698f; /* Fuji blue */
  --ss-strip-kanji-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-vocabulary: #55698f; /* Fuji blue */
  --ss-strip-vocabulary-ink: #fbf6ed; /* Paper ivory */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
/* The window rim (keepsake-frame.svg) in this palette: outline Fuji blue, highlight Paper ivory, rim Stone grey 12% on Paper ivory. */
[data-skin="keepsake"][data-palette="fuji-headers"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%2355698f' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23f0ebe3' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* 5. Graphite Rose */
[data-skin="keepsake"][data-palette="graphite-rose"] {
  --ss-color-paper: #fbf6ed; /* Paper ivory */
  --ss-color-panel: #fbf6ed; /* Paper ivory */
  --ss-color-input: #fbf6ed; /* Paper ivory */
  --ss-bevel-light: #fbf6ed; /* Paper ivory */
  --ss-color-bg: #e4dfd8; /* Stone grey 25% on Paper ivory */
  --ss-color-surface: #e4dfd8; /* Stone grey 25% on Paper ivory */
  --ss-color-shell: #e4dfd8; /* Stone grey 25% on Paper ivory */
  --ss-color-stage: #cac6c0; /* (Stone grey 25% on Paper ivory) 84% on Graphite */
  --ss-color-ink: #404144; /* Graphite */
  --ss-color-ink-soft: #5c5c5d; /* Graphite 85% on Paper ivory */
  --ss-color-border: #404144; /* Graphite */
  --ss-color-border-soft: #9d9b98; /* Stone grey */
  --ss-color-tan-border: #9d9b98; /* Stone grey */
  --ss-color-tan-border-soft: #d5d2cb; /* Stone grey 40% on Paper ivory */
  --ss-language-tab-frame: #404144; /* Graphite */
  --ss-color-pink: #93546b; /* Deep rose */
  --ss-color-pink-strong: #7a4e5f; /* Deep rose 70% on Graphite */
  --ss-color-pink-soft: #e8d9d6; /* Deep rose 18% on Paper ivory */
  --ss-color-dock-selected: #93546b; /* Deep rose */
  --ss-color-purple: #404144; /* Graphite */
  --ss-color-purple-light: #5c5c5d; /* Graphite 85% on Paper ivory */
  --ss-color-purple-dark: #404144; /* Graphite */
  --ss-color-purple-soft: #e4dfd8; /* Stone grey 25% on Paper ivory */
  --ss-titlebar-bevel-light: #6f6e6e; /* Graphite 75% on Paper ivory */
  --ss-titlebar-bevel-shade: #404144; /* Graphite 60% on Graphite */
  --ss-color-title: #fbf6ed; /* Paper ivory */
  --ss-close-face: #fbf6ed; /* Paper ivory */
  --ss-color-shadow: #404144; /* Graphite */
  --ss-color-backdrop: rgba(64, 65, 68, 0.5); /* Graphite at 50% opacity */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(64, 65, 68, 0.4); /* bevels; drop shadow Graphite at 40% opacity */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(64, 65, 68, 0.38); /* Stone grey inner shade; Graphite at 38% opacity */
  --ss-role-focus: #404144; /* Graphite */
  --ss-role-hover-edge: #404144; /* Graphite */
  --ss-role-tag-ink: #404144; /* Graphite */
  --ss-role-study-card-edge: #404144; /* Graphite */
  --ss-role-progress-done: #404144; /* Graphite */
  --ss-role-notice-edge: #404144; /* Graphite */
  --ss-role-highlight: #e8d9d6; /* Deep rose 18% on Paper ivory */
  --ss-role-study-card: #404144; /* Graphite */
  --ss-shadow: 2px 3px 0 rgba(64, 65, 68, 0.42); /* Graphite at 42% opacity */
  --ss-shadow-soft: 1px 2px 0 rgba(64, 65, 68, 0.24); /* Graphite at 24% opacity */
  --ss-shadow-hard: 3px 3px 0 rgba(64, 65, 68, 0.35); /* Graphite at 35% opacity */
  --ss-shadow-lifted: 3px 3px 0 rgba(64, 65, 68, 0.9), 7px 8px 14px rgba(64, 65, 68, 0.3); /* Graphite at 90% and 30% opacity */
  --ss-window-drop: rgba(64, 65, 68, 0.35); /* Graphite at 35% opacity */
  --ss-role-on-selected: #fbf6ed; /* Paper ivory */
  --ss-role-study-card-ink: #fbf6ed; /* Paper ivory */
  --ss-panel-calendar: #fbf6ed; /* Paper ivory */
  --ss-panel-kanji: #fbf6ed; /* Paper ivory */
  --ss-panel-vocabulary: #fbf6ed; /* Paper ivory */
  --ss-color-ink-faint: #a4a19e; /* (Graphite 85% on Paper ivory) 55% on Paper ivory */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #55698f; /* Fuji blue */
  --ss-strip-calendar-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-kanji: #55698f; /* Fuji blue */
  --ss-strip-kanji-ink: #fbf6ed; /* Paper ivory */
  --ss-strip-vocabulary: #55698f; /* Fuji blue */
  --ss-strip-vocabulary-ink: #fbf6ed; /* Paper ivory */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
/* The window rim (keepsake-frame.svg) in this palette: outline Graphite, highlight Paper ivory, rim Stone grey 25% on Paper ivory. */
[data-skin="keepsake"][data-palette="graphite-rose"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%23404144' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23e4dfd8' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* 6. Navy Pastel */
[data-skin="keepsake"][data-palette="navy-pastel"] {
  --ss-color-paper: #fbf6ed; /* Paper ivory */
  --ss-color-panel: #fbf6ed; /* Paper ivory */
  --ss-color-input: #fbf6ed; /* Paper ivory */
  --ss-bevel-light: #fbf6ed; /* Paper ivory */
  --ss-color-bg: #f3efe6; /* Stone grey 8% on Paper ivory */
  --ss-color-surface: #f3efe6; /* Stone grey 8% on Paper ivory */
  --ss-color-shell: #f3efe6; /* Stone grey 8% on Paper ivory */
  --ss-color-stage: #d0d0ce; /* (Stone grey 8% on Paper ivory) 84% on Pocket navy */
  --ss-color-ink: #182e4d; /* Pocket navy */
  --ss-color-ink-soft: #55698f; /* Fuji blue */
  --ss-color-border: #182e4d; /* Pocket navy */
  --ss-color-border-soft: #9d9b98; /* Stone grey */
  --ss-color-tan-border: #9d9b98; /* Stone grey */
  --ss-color-tan-border-soft: #d5d2cb; /* Stone grey 40% on Paper ivory */
  --ss-language-tab-frame: #182e4d; /* Pocket navy */
  --ss-color-pink: #ec9cad; /* Book pink */
  --ss-color-pink-strong: #93546b; /* Deep rose */
  --ss-color-pink-soft: #f7dbda; /* Book pink 30% on Paper ivory */
  --ss-color-dock-selected: #ec9cad; /* Book pink */
  --ss-color-purple: #182e4d; /* Pocket navy */
  --ss-color-purple-light: #3a4c65; /* Pocket navy 85% on Paper ivory */
  --ss-color-purple-dark: #182e4d; /* Pocket navy */
  --ss-color-purple-soft: #e2e9ea; /* Sky blue 45% on Paper ivory */
  --ss-titlebar-bevel-light: #516075; /* Pocket navy 75% on Paper ivory */
  --ss-titlebar-bevel-shade: #283649; /* Pocket navy 60% on Graphite */
  --ss-color-title: #fbf6ed; /* Paper ivory */
  --ss-close-face: #fbf6ed; /* Paper ivory */
  --ss-color-shadow: #182e4d; /* Pocket navy */
  --ss-color-backdrop: rgba(24, 46, 77, 0.5); /* Pocket navy at 50% opacity */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(24, 46, 77, 0.4); /* bevels; drop shadow Pocket navy at 40% opacity */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(24, 46, 77, 0.38); /* Stone grey inner shade; Pocket navy at 38% opacity */
  --ss-role-focus: #182e4d; /* Pocket navy */
  --ss-role-hover-edge: #182e4d; /* Pocket navy */
  --ss-role-tag-ink: #182e4d; /* Pocket navy */
  --ss-role-study-card-edge: #182e4d; /* Pocket navy */
  --ss-role-progress-done: #55698f; /* Fuji blue */
  --ss-role-notice-edge: #182e4d; /* Pocket navy */
  --ss-role-highlight: #f7dbda; /* Book pink 30% on Paper ivory */
  --ss-role-study-card: #e2e9ea; /* Sky blue 45% on Paper ivory */
  --ss-shadow: 2px 3px 0 rgba(24, 46, 77, 0.42); /* Pocket navy at 42% opacity */
  --ss-shadow-soft: 1px 2px 0 rgba(24, 46, 77, 0.24); /* Pocket navy at 24% opacity */
  --ss-shadow-hard: 3px 3px 0 rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-shadow-lifted: 3px 3px 0 rgba(24, 46, 77, 0.9), 7px 8px 14px rgba(24, 46, 77, 0.3); /* Pocket navy at 90% and 30% opacity */
  --ss-window-drop: rgba(24, 46, 77, 0.35); /* Pocket navy at 35% opacity */
  --ss-role-on-selected: #182e4d; /* Pocket navy */
  --ss-role-study-card-ink: #182e4d; /* Pocket navy */
  --ss-panel-calendar: #eaedeb; /* Sky blue 30% on Paper ivory */
  --ss-panel-kanji: #fbf6ed; /* Paper ivory */
  --ss-panel-vocabulary: #f9e9e3; /* Book pink 15% on Paper ivory */
  --ss-color-ink-faint: #a0a8b9; /* Fuji blue 55% on Paper ivory */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #c3d9e6; /* Sky blue */
  --ss-strip-calendar-ink: #182e4d; /* Pocket navy */
  --ss-strip-kanji: #dad6cf; /* Stone grey 35% on Paper ivory */
  --ss-strip-kanji-ink: #182e4d; /* Pocket navy */
  --ss-strip-vocabulary: #f5d2d3; /* Book pink 40% on Paper ivory */
  --ss-strip-vocabulary-ink: #182e4d; /* Pocket navy */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
/* The window rim (keepsake-frame.svg) in this palette: outline Pocket navy, highlight Paper ivory, rim Stone grey 8% on Paper ivory. */
[data-skin="keepsake"][data-palette="navy-pastel"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%23182e4d' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fbf6ed' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23f3efe6' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* v94: Room (the decided phone design; colours from palette v3). Edge #51476f, bar #51476f, band #ecd1b4, selected #51476f. */
[data-skin="keepsake"][data-palette="room-tan"] {
  --ss-color-paper: #fffaf4; /* v94 Room */
  --ss-color-panel: #fffaf4; /* v94 Room */
  --ss-color-input: #fffaf4; /* v94 Room */
  --ss-bevel-light: #fffaf4; /* v94 Room */
  --ss-color-bg: #f3e6cf; /* v94 Room */
  --ss-color-surface: #f3e6cf; /* v94 Room */
  --ss-color-shell: #f3e6cf; /* v94 Room */
  --ss-color-stage: #e2cfae; /* v94 Room */
  --ss-color-ink: #3b2b2e; /* v94 Room */
  --ss-color-ink-soft: #6b5658; /* v94 Room */
  --ss-color-border: #51476f; /* v94 Room */
  --ss-color-border-soft: #b1a9b8; /* v94 Room */
  --ss-color-tan-border: #857d97; /* v94: plum at 70% on paper, the edge of rows, cards and fields */
  --ss-color-tan-border-soft: #ecd3b1; /* v94 Room */
  --ss-language-tab-frame: #51476f; /* v94 Room */
  --ss-color-pink: #51476f; /* v94 Room */
  --ss-color-pink-strong: #51476f; /* v94 Room */
  --ss-color-pink-soft: #ecd3b1; /* v94 Room */
  --ss-color-dock-selected: #51476f; /* v94 Room */
  --ss-color-purple: #51476f; /* v94 Room */
  --ss-color-purple-light: #6b6283; /* v94 Room */
  --ss-color-purple-dark: #51476f; /* v94 Room */
  --ss-color-purple-soft: #ecd3b1; /* v94 Room */
  --ss-titlebar-bevel-light: #7c7490; /* v94 Room */
  --ss-titlebar-bevel-shade: #483c55; /* v94 Room */
  --ss-color-title: #fffaf4; /* v94 Room */
  --ss-close-face: #fffaf4; /* v94 Room */
  --ss-color-shadow: #51476f; /* v94 Room */
  --ss-color-backdrop: rgba(81, 71, 111, 0.5); /* v94 Room: the edge colour */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(81, 71, 111, 0.4); /* v94 Room: the edge colour */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(81, 71, 111, 0.38); /* v94 Room: the edge colour */
  --ss-role-focus: #51476f; /* v94 Room */
  --ss-role-hover-edge: #51476f; /* v94 Room */
  --ss-role-tag-ink: #3b2b2e; /* v94 Room */
  --ss-role-study-card-edge: #51476f; /* v94 Room */
  --ss-role-progress-done: #51476f; /* v94 Room */
  --ss-role-notice-edge: #51476f; /* v94 Room */
  --ss-role-highlight: #eed5ba; /* v94 Room */
  --ss-role-study-card: #51476f; /* v94 Room */
  --ss-shadow: 2px 3px 0 rgba(81, 71, 111, 0.42); /* v94 Room: the edge colour */
  --ss-shadow-soft: 1px 2px 0 rgba(81, 71, 111, 0.24); /* v94 Room: the edge colour */
  --ss-shadow-hard: 3px 3px 0 rgba(81, 71, 111, 0.35); /* v94 Room: the edge colour */
  --ss-shadow-lifted: 3px 3px 0 rgba(81, 71, 111, 0.9), 7px 8px 14px rgba(81, 71, 111, 0.3); /* v94 Room: the edge colour */
  --ss-window-drop: rgba(81, 71, 111, 0.35); /* v94 Room: the edge colour */
  --ss-role-on-selected: #fbf2e2; /* v94 Room */
  --ss-role-study-card-ink: #fffaf4; /* v94 Room */
  --ss-panel-calendar: #fffaf4; /* v94 Room */
  --ss-panel-kanji: #fffaf4; /* v94 Room */
  --ss-panel-vocabulary: #fffaf4; /* v94 Room */
  --ss-color-ink-faint: #766062; /* v94 Room */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #ecd1b4; /* v94 Room */
  --ss-strip-calendar-ink: #1f2550; /* v94 Room */
  --ss-strip-kanji: #ecd1b4; /* v94 Room */
  --ss-strip-kanji-ink: #1f2550; /* v94 Room */
  --ss-strip-vocabulary: #ecd1b4; /* v94 Room */
  --ss-strip-vocabulary-ink: #1f2550; /* v94 Room */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
[data-skin="keepsake"][data-palette="room-tan"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%2351476f' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fffaf4' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23f3e6cf' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* v94: Paper crane (the decided phone design; colours from palette v3). Edge #383660, bar #51476f, band #a9c48e, selected #c9bfdc. */
[data-skin="keepsake"][data-palette="paper-crane"] {
  --ss-color-paper: #fffaf4; /* v94 Paper crane */
  --ss-color-panel: #fffaf4; /* v94 Paper crane */
  --ss-color-input: #fffaf4; /* v94 Paper crane */
  --ss-bevel-light: #fffaf4; /* v94 Paper crane */
  --ss-color-bg: #f3e6cf; /* v94 Paper crane */
  --ss-color-surface: #f3e6cf; /* v94 Paper crane */
  --ss-color-shell: #f3e6cf; /* v94 Paper crane */
  --ss-color-stage: #e2cfae; /* v94 Paper crane */
  --ss-color-ink: #3b2b2e; /* v94 Paper crane */
  --ss-color-ink-soft: #51476f; /* v94 Paper crane */
  --ss-color-border: #383660; /* v94 Paper crane */
  --ss-color-border-soft: #b1a9b8; /* v94 Paper crane */
  --ss-color-tan-border: #857d97; /* v94: plum at 70% on paper, the edge of rows, cards and fields */
  --ss-color-tan-border-soft: #e2cfae; /* v94 Paper crane */
  --ss-language-tab-frame: #383660; /* v94 Paper crane */
  --ss-color-pink: #c9bfdc; /* v94 Paper crane */
  --ss-color-pink-strong: #51476f; /* v94 Paper crane */
  --ss-color-pink-soft: #e7dfe9; /* v94 Paper crane */
  --ss-color-dock-selected: #c9bfdc; /* v94 Paper crane */
  --ss-color-purple: #51476f; /* v94 Paper crane */
  --ss-color-purple-light: #6b6283; /* v94 Paper crane */
  --ss-color-purple-dark: #51476f; /* v94 Paper crane */
  --ss-color-purple-soft: #dee5cd; /* v94 Paper crane */
  --ss-titlebar-bevel-light: #7c7490; /* v94 Paper crane */
  --ss-titlebar-bevel-shade: #483c55; /* v94 Paper crane */
  --ss-color-title: #f3e6cf; /* v94 Paper crane */
  --ss-close-face: #fffaf4; /* v94 Paper crane */
  --ss-color-shadow: #383660; /* v94 Paper crane */
  --ss-color-backdrop: rgba(56, 54, 96, 0.5); /* v94 Paper crane: the edge colour */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(56, 54, 96, 0.4); /* v94 Paper crane: the edge colour */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(56, 54, 96, 0.38); /* v94 Paper crane: the edge colour */
  --ss-role-focus: #383660; /* v94 Paper crane */
  --ss-role-hover-edge: #383660; /* v94 Paper crane */
  --ss-role-tag-ink: #3b2b2e; /* v94 Paper crane */
  --ss-role-study-card-edge: #383660; /* v94 Paper crane */
  --ss-role-progress-done: #51476f; /* v94 Paper crane */
  --ss-role-notice-edge: #383660; /* v94 Paper crane */
  --ss-role-highlight: #eed5ba; /* v94 Paper crane */
  --ss-role-study-card: #51476f; /* v94 Paper crane */
  --ss-shadow: 2px 3px 0 rgba(56, 54, 96, 0.42); /* v94 Paper crane: the edge colour */
  --ss-shadow-soft: 1px 2px 0 rgba(56, 54, 96, 0.24); /* v94 Paper crane: the edge colour */
  --ss-shadow-hard: 3px 3px 0 rgba(56, 54, 96, 0.35); /* v94 Paper crane: the edge colour */
  --ss-shadow-lifted: 3px 3px 0 rgba(56, 54, 96, 0.9), 7px 8px 14px rgba(56, 54, 96, 0.3); /* v94 Paper crane: the edge colour */
  --ss-window-drop: rgba(56, 54, 96, 0.35); /* v94 Paper crane: the edge colour */
  --ss-role-on-selected: #3b2b2e; /* v94 Paper crane */
  --ss-role-study-card-ink: #f3e6cf; /* v94 Paper crane */
  --ss-panel-calendar: #fffaf4; /* v94 Paper crane */
  --ss-panel-kanji: #fffaf4; /* v94 Paper crane */
  --ss-panel-vocabulary: #fffaf4; /* v94 Paper crane */
  --ss-color-ink-faint: #766062; /* v94 Paper crane */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #a9c48e; /* v94 Paper crane */
  --ss-strip-calendar-ink: #3b2b2e; /* v94 Paper crane */
  --ss-strip-kanji: #a9c48e; /* v94 Paper crane */
  --ss-strip-kanji-ink: #3b2b2e; /* v94 Paper crane */
  --ss-strip-vocabulary: #a9c48e; /* v94 Paper crane */
  --ss-strip-vocabulary-ink: #3b2b2e; /* v94 Paper crane */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
[data-skin="keepsake"][data-palette="paper-crane"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%23383660' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fffaf4' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23f3e6cf' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* v94: Fuji & pink (the decided phone design; colours from palette v3). Edge #51476f, bar #6f8fb8, band #a9c0dc, selected #a9c0dc. */
[data-skin="keepsake"][data-palette="fuji-pink"] {
  --ss-color-paper: #fffaf4; /* v94 Fuji & pink */
  --ss-color-panel: #fffaf4; /* v94 Fuji & pink */
  --ss-color-input: #fffaf4; /* v94 Fuji & pink */
  --ss-bevel-light: #fffaf4; /* v94 Fuji & pink */
  --ss-color-bg: #f3e6cf; /* v94 Fuji & pink */
  --ss-color-surface: #f3e6cf; /* v94 Fuji & pink */
  --ss-color-shell: #f3e6cf; /* v94 Fuji & pink */
  --ss-color-stage: #e2cfae; /* v94 Fuji & pink */
  --ss-color-ink: #3b2b2e; /* v94 Fuji & pink */
  --ss-color-ink-soft: #6b5658; /* v94 Fuji & pink */
  --ss-color-border: #51476f; /* v94 Fuji & pink */
  --ss-color-border-soft: #b1a9b8; /* v94 Fuji & pink */
  --ss-color-tan-border: #857d97; /* v94: plum at 70% on paper, the edge of rows, cards and fields */
  --ss-color-tan-border-soft: #e2cfae; /* v94 Fuji & pink */
  --ss-language-tab-frame: #51476f; /* v94 Fuji & pink */
  --ss-color-pink: #a9c0dc; /* v94 Fuji & pink */
  --ss-color-pink-strong: #b85876; /* v94 Fuji & pink */
  --ss-color-pink-soft: #fde5e6; /* v94 Fuji & pink */
  --ss-color-dock-selected: #a9c0dc; /* v94 Fuji & pink */
  --ss-color-purple: #6f8fb8; /* v94 Fuji & pink */
  --ss-color-purple-light: #859fc1; /* v94 Fuji & pink */
  --ss-color-purple-dark: #6f8fb8; /* v94 Fuji & pink */
  --ss-color-purple-soft: #dee4eb; /* v94 Fuji & pink */
  --ss-titlebar-bevel-light: #93aac7; /* v94 Fuji & pink */
  --ss-titlebar-bevel-shade: #5a6781; /* v94 Fuji & pink */
  --ss-color-title: #2a1f22; /* v94 Fuji & pink */
  --ss-close-face: #fffaf4; /* v94 Fuji & pink */
  --ss-color-shadow: #51476f; /* v94 Fuji & pink */
  --ss-color-backdrop: rgba(81, 71, 111, 0.5); /* v94 Fuji & pink: the edge colour */
  --ss-button-shadow-hard: inset 1px 1px 0 var(--ss-bevel-light), inset -1px -1px 0 var(--ss-bevel-shade), 2px 2px 0 rgba(81, 71, 111, 0.4); /* v94 Fuji & pink: the edge colour */
  --ss-language-tab-shadow: inset 2px 2px 0 var(--ss-color-input), inset -2px -2px 0 #9d9b98, 2px 3px 0 rgba(81, 71, 111, 0.38); /* v94 Fuji & pink: the edge colour */
  --ss-role-focus: #51476f; /* v94 Fuji & pink */
  --ss-role-hover-edge: #51476f; /* v94 Fuji & pink */
  --ss-role-tag-ink: #3b2b2e; /* v94 Fuji & pink */
  --ss-role-study-card-edge: #51476f; /* v94 Fuji & pink */
  --ss-role-progress-done: #6f8fb8; /* v94 Fuji & pink */
  --ss-role-notice-edge: #51476f; /* v94 Fuji & pink */
  --ss-role-highlight: #eed5ba; /* v94 Fuji & pink */
  --ss-role-study-card: #6f8fb8; /* v94 Fuji & pink */
  --ss-shadow: 2px 3px 0 rgba(81, 71, 111, 0.42); /* v94 Fuji & pink: the edge colour */
  --ss-shadow-soft: 1px 2px 0 rgba(81, 71, 111, 0.24); /* v94 Fuji & pink: the edge colour */
  --ss-shadow-hard: 3px 3px 0 rgba(81, 71, 111, 0.35); /* v94 Fuji & pink: the edge colour */
  --ss-shadow-lifted: 3px 3px 0 rgba(81, 71, 111, 0.9), 7px 8px 14px rgba(81, 71, 111, 0.3); /* v94 Fuji & pink: the edge colour */
  --ss-window-drop: rgba(81, 71, 111, 0.35); /* v94 Fuji & pink: the edge colour */
  --ss-role-on-selected: #1f2550; /* v94 Fuji & pink */
  --ss-role-study-card-ink: #2a1f22; /* v94 Fuji & pink */
  --ss-panel-calendar: #fffaf4; /* v94 Fuji & pink */
  --ss-panel-kanji: #fffaf4; /* v94 Fuji & pink */
  --ss-panel-vocabulary: #fffaf4; /* v94 Fuji & pink */
  --ss-color-ink-faint: #766062; /* v94 Fuji & pink */
  /* Journal's and Decks' warm paint takes this palette's roles. */
  --ss-decks-field-edge: var(--ss-color-tan-border);
  --ss-decks-dialog-outline: var(--ss-color-border);
  --ss-decks-dialog-shade: var(--ss-color-tan-border);
  --ss-decks-rule: var(--ss-color-tan-border-soft);
  --ss-decks-card-field-edge: var(--ss-color-tan-border);
  --ss-decks-card-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-field-shade: var(--ss-color-tan-border-soft);
  --ss-decks-reading-ink: var(--ss-color-ink);
  --ss-decks-reading-fill: var(--ss-color-paper);
  --ss-decks-text-ink: var(--ss-color-ink);
  --ss-decks-heading-ink: var(--ss-color-ink);
  --ss-decks-choice-edge: var(--ss-color-tan-border);
  --ss-journal-rail-edge: var(--ss-color-tan-border-soft);
  --ss-journal-rail-divider: var(--ss-color-tan-border-soft);
  --ss-journal-date-divider: var(--ss-color-tan-border-soft);
  --ss-journal-card-ink: var(--ss-color-ink);
  --ss-journal-card-off-edge: var(--ss-color-tan-border-soft);
  --ss-journal-card-off-fill: var(--ss-color-bg);
  --ss-journal-date-ink: var(--ss-color-ink-soft);
  --ss-journal-rail-note: var(--ss-color-ink-soft);
  --ss-journal-empty-ink: var(--ss-color-ink-soft);
  --ss-journal-next-ink: var(--ss-color-ink-soft);
  --ss-journal-popover-edge: var(--ss-color-pink-strong);
  --ss-journal-popover-shade: var(--ss-color-tan-border-soft);
  --ss-journal-popover-heading: var(--ss-color-ink);
  --ss-journal-popover-note: var(--ss-color-ink-soft);
  --ss-journal-popover-rule: var(--ss-color-tan-border-soft);
  --ss-journal-popover-close-edge: var(--ss-color-border-soft);
  --ss-journal-popover-close-ink: var(--ss-color-ink);
  --ss-journal-popover-close-fill: var(--ss-color-paper);
  --ss-journal-feeling-edge: var(--ss-color-tan-border-soft);
  --ss-journal-feeling-ink: var(--ss-color-ink);
  --ss-journal-feeling-note: var(--ss-color-ink-soft);
  --ss-journal-phone-frame: var(--ss-color-border);
  --ss-journal-phone-shade: var(--ss-color-tan-border);
  --ss-journal-phone-nav-edge: var(--ss-color-border);
  --ss-role-counter: transparent; --ss-role-counter-ink: var(--ss-color-title); --ss-role-counter-edge: color-mix(in srgb, var(--ss-color-title) 55%, transparent); --ss-role-counter-opacity: 1; /* the deck page's 1 / 20 counter: a count, not a choice, at full strength so it passes AA on the bar */
  --ss-strip-calendar: #a9c0dc; /* v94 Fuji & pink */
  --ss-strip-calendar-ink: #1f2550; /* v94 Fuji & pink */
  --ss-strip-kanji: #a9c0dc; /* v94 Fuji & pink */
  --ss-strip-kanji-ink: #1f2550; /* v94 Fuji & pink */
  --ss-strip-vocabulary: #a9c0dc; /* v94 Fuji & pink */
  --ss-strip-vocabulary-ink: #1f2550; /* v94 Fuji & pink */
  --pink: var(--ss-color-pink); --pink-edge: var(--ss-color-pink-strong); --ink: var(--ss-color-ink); --paper: var(--ss-color-paper);
  --muted: var(--ss-color-ink-soft); --purple: var(--ss-color-purple);
  --purple-dark: var(--ss-color-purple-dark); --line: var(--ss-color-border);
}
[data-skin="keepsake"][data-palette="fuji-pink"] .ui-window { filter: drop-shadow(3px 3px 0 var(--ss-window-drop)); border-image-source: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' shape-rendering='crispEdges'%3E%3Cpath fill='%2351476f' d='M4 0h8v1h3v3h1v8h-1v3h-3v1H4v-1H1v-3H0V4h1V1h3Z'/%3E%3Cpath fill='%23fffaf4' d='M4 1h8v1h2v2h1v8h-1v2h-2v1H4v-1H2v-2H1V4h1V2h2Z'/%3E%3Cpath fill='%23f3e6cf' d='M4 3h8v1h1v8h-1v1H4v-1H3V4h1Z'/%3E%3C/svg%3E"); }

/* v94 looks, type: every label in the reading face (no Courier); titles, section labels and big action buttons in the pixel title face (Jersey 15). */
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) {
  --ss-font-pixel-title: "Pocket Pixel Title", var(--ss-font-reading);
  --ss-font-chrome: var(--ss-font-reading);
  --ss-font-ui: var(--ss-font-reading);
  --ss-font-window-title: var(--ss-font-pixel-title);
  --ss-font-display: var(--ss-font-pixel-title);
  --ss-font-pixel: var(--ss-font-pixel-title);
  --font-ui: var(--ss-font-reading);
  --font-display: var(--ss-font-pixel-title);
}

/* v94 looks, the joined switch (English | 日本語, Read | Focus | Shadowing, the phone Settings tabs): one squared track with a
   1 px edge, a bevel and a hard 2 x 3 shadow; parts touch it 2 px in; the chosen part filled in the look's colour with an inset
   edge, its words bold. Room's track is cream, the others paper. Measured from phone build v94. */
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) {
  --ss-v94-seg-track: var(--ss-color-paper);
  --ss-v94-raise: inset 1px 1px 0 rgba(255, 255, 255, 0.9), inset -1px -1px 0 rgba(81, 71, 111, 0.2), 2px 3px 0 rgba(81, 71, 111, 0.42); /* plum at 20% and 42% */
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="room-tan"] { --ss-v94-seg-track: var(--ss-color-bg); }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-pill-switch {
  gap: 2px; padding: 2px; border: 1px solid var(--ss-color-border); border-radius: 6px; background: var(--ss-v94-seg-track); box-shadow: var(--ss-v94-raise);
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-pill-switch > button {
  border-radius: 0; color: var(--ss-color-ink-soft); font: 600 calc(14px * var(--ss-text-scale, 1))/1.1 var(--ss-font-reading);
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-pill-switch > button:is([aria-pressed="true"], [aria-selected="true"]) {
  font-weight: 700; color: var(--ss-role-on-selected); background: var(--ss-color-pink); box-shadow: inset 0 0 0 1px var(--ss-color-border);
}

/* v94 looks, buttons: paper with a 2 px plum edge, 6 px corners, a bevel and a hard 2 x 3 shadow; the main button in the look's
   colour (Room plum with cream words; Paper crane and Fuji & pink pink with plum or navy words) with a navy hard shadow.
   Measured from phone build v94. Button words keep the reading face; the main button takes the pixel face (primitives.css). */
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) {
  --ss-radius-button: 6px;
  --ss-button-shadow-hard: var(--ss-v94-raise);
  --ss-role-primary-edge: #51476f; /* plum */
  --ui-primary-shadow: inset 1px 1px 0 rgba(255, 255, 255, 0.28), inset -1px -1px 0 rgba(31, 37, 80, 0.55), 2px 3px 0 #1f2550; /* navy at 55%, navy */
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="room-tan"] { --ss-role-primary: #51476f; --ui-primary-color: #fbf2e2; }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="paper-crane"] { --ss-role-primary: #f7b5c5; --ui-primary-color: #51476f; }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="fuji-pink"] { --ss-role-primary: #f7b5c5; --ui-primary-color: #1f2550; }

/* v94 looks: the top bar's icons are plum outlines on paper squares. */
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) { --ss-v94-icon-ink: #51476f; }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-phone-nav__button { color: var(--ss-v94-icon-ink); }

/* v94 looks, the phone tab bar: paper under a 2 px plum rule; each tab a 6 px-cornered block, its name in the pixel title face
   at 16 px; the current tab filled in the look's tab colour (Room plum, Paper crane lilac, Fuji & pink pink) with a plum edge
   and the main button's hard shadow. Measured from phone build v94. */
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="room-tan"] { --ss-v94-tab: #51476f; --ss-v94-tab-ink: #fbf2e2; }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="paper-crane"] { --ss-v94-tab: #c9bfdc; --ss-v94-tab-ink: #3b2b2e; }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"])[data-palette="fuji-pink"] { --ss-v94-tab: #f7b5c5; --ss-v94-tab-ink: #1f2550; }
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-phone-tabs {
  column-gap: 8px; padding: 8px max(10px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)); border-top: 2px solid #51476f; background: var(--ss-color-paper);
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-phone-tabs__tab {
  border: 2px solid transparent; border-radius: 6px; color: #51476f; font: 600 calc(16px * var(--ss-text-scale, 1))/1.1 var(--ss-font-pixel-title);
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-phone-tabs__tab:is([aria-pressed="true"], [aria-current="page"]) {
  border-color: #51476f; color: var(--ss-v94-tab-ink); background: var(--ss-v94-tab); box-shadow: var(--ui-primary-shadow);
}
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-phone-tabs__tab:is([aria-pressed="true"], [aria-current="page"]) .ui-phone-tabs__icon { background: none; }
/* Each tab's icon is a 22 square on its own (no pill behind it), so a tab is 55 high and the bar 77. */
:is([data-skin="keepsake"], .journal-app[data-skin="keepsake"], .decks-app[data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-phone-tabs__icon { width: 22px; height: 22px; border-radius: 0; }

/* The Skin picker's previews (settings.css draws them): each option's bar, header strip, panel, choice pill and ground. */
.ui-skin-preview[data-skin-preview="keepsake"] { --ui-skin-preview-bar: linear-gradient(90deg, #51476f, #6f719f); --ui-skin-preview-strip: #51476f; --ui-skin-preview-choice: #f7b5c5; --ui-skin-preview-paper: #fffaf4; --ui-skin-preview-ground: #fcf6ef; }
.ui-skin-preview[data-skin-preview="clean"] { --ui-skin-preview-bar: #7A82B4; --ui-skin-preview-strip: #626A9B; --ui-skin-preview-choice: #7A82B4; --ui-skin-preview-paper: #FFFDF9; --ui-skin-preview-ground: #FBF8F3; }
.ui-skin-preview[data-skin-preview="navy-sky"] { --ui-skin-preview-bar: #182e4d; --ui-skin-preview-strip: #c3d9e6; --ui-skin-preview-choice: #ec9cad; --ui-skin-preview-paper: #fbf6ed; --ui-skin-preview-ground: #eaedeb; }
.ui-skin-preview[data-skin-preview="fuji-sky"] { --ui-skin-preview-bar: #55698f; --ui-skin-preview-strip: #55698f; --ui-skin-preview-choice: #ec9cad; --ui-skin-preview-paper: #fbf6ed; --ui-skin-preview-ground: #d9e5e9; }
.ui-skin-preview[data-skin-preview="navy-ivory"] { --ui-skin-preview-bar: #182e4d; --ui-skin-preview-strip: #55698f; --ui-skin-preview-choice: #182e4d; --ui-skin-preview-paper: #fbf6ed; --ui-skin-preview-ground: #fbf6ed; }
.ui-skin-preview[data-skin-preview="fuji-headers"] { --ui-skin-preview-bar: #55698f; --ui-skin-preview-strip: #55698f; --ui-skin-preview-choice: #c3d9e6; --ui-skin-preview-paper: #fbf6ed; --ui-skin-preview-ground: #f0ebe3; }
.ui-skin-preview[data-skin-preview="graphite-rose"] { --ui-skin-preview-bar: #404144; --ui-skin-preview-strip: #55698f; --ui-skin-preview-choice: #93546b; --ui-skin-preview-paper: #fbf6ed; --ui-skin-preview-ground: #e4dfd8; }
.ui-skin-preview[data-skin-preview="navy-pastel"] { --ui-skin-preview-bar: #182e4d; --ui-skin-preview-strip: #c3d9e6; --ui-skin-preview-choice: #ec9cad; --ui-skin-preview-paper: #fbf6ed; --ui-skin-preview-ground: #f3efe6; }
.ui-skin-preview[data-skin-preview="room-tan"] { --ui-skin-preview-bar: #51476f; --ui-skin-preview-strip: #ecd1b4; --ui-skin-preview-choice: #51476f; --ui-skin-preview-paper: #fffaf4; --ui-skin-preview-ground: #f3e6cf; }
.ui-skin-preview[data-skin-preview="paper-crane"] { --ui-skin-preview-bar: #51476f; --ui-skin-preview-strip: #a9c48e; --ui-skin-preview-choice: #c9bfdc; --ui-skin-preview-paper: #fffaf4; --ui-skin-preview-ground: #f3e6cf; }
.ui-skin-preview[data-skin-preview="fuji-pink"] { --ui-skin-preview-bar: #6f8fb8; --ui-skin-preview-strip: #a9c0dc; --ui-skin-preview-choice: #a9c0dc; --ui-skin-preview-paper: #fffaf4; --ui-skin-preview-ground: #f3e6cf; }

/* v94 looks, the app windows on a computer as the desktop board draws them (journal-a, D031-wide): a 1 px plum edge round
   the window; a 56 px plum title bar (padding 0 6 0 16), the app's name in the pixel title face at 22 px in the crane's lit
   cream, its Japanese name in the Japanese face; the window buttons 44 px paper squares 6 apart with a 2 px cream edge,
   6 px corners and the raised navy shadow, each a plum line icon at three quarters of the square. */
@media (min-width: 901px), (min-width: 768px) and (pointer: fine) {
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-window.ui-window { border: 1px solid var(--ss-lock-ground); border-image: none; border-radius: 0; }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-window .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel),
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-window:not(.is-focused) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) { flex-basis: 56px; min-height: 56px; height: 56px; padding: 0 6px 0 16px; border: 0; color: var(--ss-lock-ink); background: var(--ss-lock-ground); box-shadow: none; text-shadow: none; }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-title strong { color: var(--ss-lock-ink); font: 400 22px/1 var(--ss-font-pixel-title, var(--ss-font-display)); }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-title-jp { font-family: var(--ss-font-jp); }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-controls { gap: 6px; }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-controls button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; border: 2px solid var(--ss-lock-ink); border-radius: 6px; color: var(--ss-lock-ground); background: var(--ss-color-paper); box-shadow: inset 1px 1px 0 rgba(255, 255, 255, .28), inset -1px -1px 0 rgba(31, 37, 80, .55), 2px 3px 0 var(--ss-lock-raise); }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-controls :is(.ui-window-control-default, .ui-window-control-art) { display: none; }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-controls .ui-window-control-line { display: block; width: 33px; height: 33px; stroke-width: 1.6; }
}
@media (min-width: 901px), (min-width: 768px) and (pointer: fine) {
  /* a window behind another wears the look's band in its title bar (D012), its name in plum */
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-window:not(.is-focused) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) { color: var(--ss-lock-ground); background: var(--ss-strip-calendar, var(--ss-color-bg)); }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-window:not(.is-focused) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-title strong { color: var(--ss-lock-ground); }
  :is([data-skin="keepsake"]):is([data-palette="room-tan"], [data-palette="paper-crane"], [data-palette="fuji-pink"]) .ui-workspace-window:not(.is-focused) .ui-workspace-titlebar:not(.ui-workspace-titlebar--panel) .ui-workspace-controls button { border-color: var(--ss-lock-ground); box-shadow: var(--ss-v94-raise, 2px 3px 0 rgba(81, 71, 111, .42)); }
}

