diff --git a/public/css/hanzi-graph.css b/public/css/hanzi-graph.css index 7d30cf71..71acbbb9 100644 --- a/public/css/hanzi-graph.css +++ b/public/css/hanzi-graph.css @@ -46,7 +46,7 @@ --legend-height: 30px; --graph-height: calc(100% - var(--legend-height) - 4px); --section-container-margin: 0 16px; - --calendar-day-color: #eee; + --calendar-day-color: #3333; --bar-chart-separator-color: #121212; --bar-chart-height: 400px; --bar-chart-width: 600px; @@ -109,6 +109,8 @@ body { /* in general, disallow overscroll gestures from causing refresh */ /* the idea is to feel more like a native app */ overscroll-behavior: contain; + background-attachment: fixed; + background-repeat: no-repeat; } body.allow-overscroll { @@ -1659,6 +1661,42 @@ using settings names for now padding-bottom: 40px; } +.settings-nav { + display: flex; + gap: 0; + margin-bottom: 20px; + border-bottom: var(--border); +} + +.settings-tab { + padding: 12px 24px; + background: none; + border: none; + border-bottom: 3px solid transparent; + font-size: 16px; + font-weight: 500; + color: var(--secondary-font-color); + cursor: pointer; + transition: color 0.2s, border-color 0.2s; +} + +.settings-tab:hover { + color: var(--primary-font-color); +} + +.settings-tab.active { + color: var(--link-color); + border-bottom-color: var(--link-color); +} + +.settings-panel { + display: none; +} + +.settings-panel.active { + display: block; +} + .settings-section { margin-bottom: 30px; padding: 20px; @@ -1808,6 +1846,32 @@ using settings names for now color: #f0a500; } +.settings-actions { + display: flex; + gap: 10px; + margin-top: 20px; + flex-wrap: wrap; +} + +.settings-actions button { + padding: 12px 24px; + font-size: 16px; + font-weight: 500; + border: none; + border-radius: 6px; + cursor: pointer; + transition: opacity 0.2s; +} + +.settings-actions button:hover { + opacity: 0.9; +} + +.settings-actions button:disabled { + opacity: 0.5; + cursor: not-allowed; +} + /* TODO(refactor): signin form stuff should be cleaned */ main.auth-form { width: 275px; diff --git a/public/index.html b/public/index.html index 358084b2..0881cdfd 100644 --- a/public/index.html +++ b/public/index.html @@ -107,6 +107,10 @@

Study Mode

more.

Hide this message

+

Cards due:

@@ -368,63 +372,147 @@

What is the flow diagram?

+ +
+
+

Anki Connect Settings

+

+ Sync your flashcards with Anki using the + Anki-Connect plugin. +

+ +
+ +
+ +
+ + +

The URL where Anki-Connect is running (default port is 8765).

+
+ +
+ + +
+ +
+ + + +

The Anki deck where cards will be synced. Will be created if it doesn't + exist.

+
+ +
+ + +

Only required if you've configured authentication in Anki-Connect.

+
+ + + +
+ + +
+

+
+ +
+

Instructions

+
    +
  1. Install Anki if you haven't already. +
  2. +
  3. Install the Anki-Connect + plugin (Tools → Add-ons → Get Add-ons → Enter code: 2055492159).
  4. +
  5. Restart Anki after installing the plugin.
  6. +
  7. Keep Anki running in the background.
  8. +
  9. Click "Test Connection" to verify connectivity.
  10. +
  11. Enable Anki Sync to automatically sync new cards.
  12. +
+

+ Note: Anki must be running for sync to work. On macOS, you may need to + disable + App Nap. +

+
+