:root { /* Light theme colors */ --bg-primary: #fff; --bg-secondary: #f8f9fa; --text-primary: #444; --text-secondary: #999; --border-primary: #ccc; --border-secondary: #e0e0e0; --accent-primary: #009E60; --accent-primary-hover: #007a4d; --accent-primary-focus: rgba(0, 158, 96, 0.2); --danger-primary: #dc3545; --danger-hover: #c82333; --danger-border: #bd2130; --success-primary: green; --warning-primary: orangered; /* Dark theme colors */ --dark-bg-primary: #222; --dark-bg-secondary: #333; --dark-text-primary: #ddd; --dark-border-primary: #555; --dark-border-secondary: #444; } html { font-size: 14px; height: 100%; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } @media (min-width: 768px) { html { font-size: 16px; } } html { position: relative; min-height: 100%; } body { margin: 0; min-height: 100%; } div.note-actions { position: fixed; bottom: 5px; left: 0; font-size: 14px; display: flex; align-items: center; gap: 8px; padding: 8px; } select.note-dropdown { padding: 6px 8px; border-radius: 5px; border: 1px solid var(--border-primary); background-color: var(--bg-primary); font-size: 13px; width: 80px; } body.dark select.note-dropdown { background-color: var(--dark-bg-secondary); color: var(--dark-text-primary); border: 1px solid var(--dark-border-primary); } form.action-form { display: inline-flex; align-items: center; gap: 4px; } form.action-form input[type="text"] { padding: 6px 8px; border: 1px solid var(--border-primary); border-radius: 5px; font-size: 13px; width: 60px; background-color: var(--bg-primary); } body.dark form.action-form input[type="text"] { background-color: var(--dark-bg-secondary); color: var(--dark-text-primary); border: 1px solid var(--dark-border-primary); } form.action-form input[type="text"]:focus { outline: none; border-color: var(--accent-primary); box-shadow: 0 0 0 2px var(--accent-primary-focus); } .btn-symbol { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 5px; border: 1px solid; text-decoration: none; font-size: 14px; cursor: pointer; transition: all 0.2s; line-height: 1; } .btn-delete { background-color: var(--danger-primary); color: var(--bg-primary); border-color: var(--danger-primary); } .btn-delete:hover { background-color: var(--danger-hover); border-color: var(--danger-border); transform: scale(1.05); } .btn-create { background-color: var(--accent-primary); color: var(--bg-primary); border-color: var(--accent-primary); } .btn-create:hover { background-color: var(--accent-primary-hover); border-color: var(--accent-primary-hover); transform: scale(1.05); } textarea { width: 100%; height: 100%; padding: 15px 15px 40px; margin: 0; resize: none; color: var(--text-primary); font-size: 14px; font-family: Consolas, 'Courier New', monospace; outline: none; position: absolute; box-sizing: border-box; border-width: 0; } body.dark, body.dark input, body.dark textarea { background-color: var(--dark-bg-primary); color: var(--dark-text-primary); } .toast { position: fixed; bottom: -30px; right: 25px; font-size: 11px; padding: 6px; color: var(--bg-primary); transition: bottom 0.3s, opacity 0.3s; opacity: 0; border-radius: 5px 5px 0 0; } .toast.show { bottom: 0; opacity: 0.8; } .toast#saved-indicator { background-color: var(--success-primary); } .toast#update-indicator { background-color: var(--warning-primary); } form.login-form input[type=password], form.login-form button { display: block; width: 100%; max-width: 300px; margin: 20px auto; font-size: 20px; padding: 8px; border: 1px solid var(--dark-bg-secondary); border-radius: 8px; box-sizing: border-box; } form.login-form input[type=password] { color: var(--text-secondary); } form.login-form button { background-color: var(--accent-primary); color: var(--bg-primary); border-color: var(--accent-primary); } form.login-form button:hover { background-color: var(--accent-primary-hover); border-color: var(--accent-primary-hover); } button, select { cursor: pointer; }