:root { --primary: #3b82f6; --primary-hover: #2563eb; --secondary: #6b7280; --success: #10b981; --warning: #f59e0b; --error: #ef4444; --background: #ffffff; --surface: #f9fafb; --border: #e5e7eb; --text: #111827; --text-secondary: #6b7280; --shadow: 0 1px 3px rgba(0, 0, 0, 0.1); } * { box-sizing: border-box; margin: 0; padding: 0; } html, body { width: 360px; height: 500px; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; font-size: 14px; line-height: 1.5; color: var(--text); background: var(--background); overflow: hidden; } header { padding: 12px; border-bottom: 1px solid var(--border); background: var(--surface); } header h1 { font-size: 18px; font-weight: 600; color: var(--primary); } section { padding: 12px; border-bottom: 1px solid var(--border); } h2 { font-size: 13px; font-weight: 600; color: var(--secondary); margin-bottom: 8px; } .form-group { margin-bottom: 12px; } .form-group label { display: block; font-size: 12px; color: var(--text-secondary); margin-bottom: 4px; } .form-group input, .form-group textarea { width: 100%; padding: 8px; border: 1px solid var(--border); border-radius: 4px; font-size: 13px; background: var(--background); } .form-group input:focus, .form-group textarea:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2); } button { padding: 8px 16px; border: none; border-radius: 4px; font-size: 13px; font-weight: 500; cursor: pointer; transition: background 0.2s; } button#submit { width: 100%; background: var(--primary); color: white; } button#submit:hover { background: var(--primary-hover); } button#sync-btn, button#settings-btn { width: 100%; padding: 8px; margin-bottom: 8px; background: var(--surface); color: var(--text); border: 1px solid var(--border); } button#sync-btn:hover, button#settings-btn:hover { background: var(--border); } #search-filter { margin-bottom: 8px; } #search { width: 100%; padding: 8px; border: 1px solid var(--border); border-radius: 4px; font-size: 13px; } .bookmark-item { padding: 10px; border: 1px solid var(--border); border-radius: 4px; margin-bottom: 8px; background: var(--surface); } .bookmark-item a { display: block; color: var(--primary); text-decoration: none; word-break: break-all; margin-bottom: 4px; } .bookmark-item a:hover { text-decoration: underline; } .bookmark-item .title { font-weight: 500; margin-bottom: 4px; } .bookmark-item .description { font-size: 12px; color: var(--text-secondary); } .bookmark-item .tags { margin-top: 4px; font-size: 11px; color: var(--secondary); } #collections-list { max-height: 150px; overflow-y: auto; } .collection-item { padding: 8px; border: 1px solid var(--border); border-radius: 4px; margin-bottom: 4px; background: var(--surface); font-size: 12px; } .collection-item h3 { font-size: 13px; margin-bottom: 4px; } .collection-item p { color: var(--text-secondary); font-size: 11px; } #sync-indicator { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 4px; } .syncing { background: var(--warning); animation: pulse 1.5s infinite; } .synced { background: var(--success); } .error { background: var(--error); } @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } #last-sync { font-size: 11px; color: var(--text-secondary); } #bookmarks-container { max-height: 150px; overflow-y: auto; } #collections-panel, #bookmark-list { max-height: 180px; } footer { padding: 12px; background: var(--surface); border-top: 1px solid var(--border); } footer button { width: 100%; }