*{box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;margin:0;padding:20px}.container{max-width:500px;margin:0 auto}.loading{text-align:center;color:#666;padding:40px}.card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-top:20px}h1{margin:0 0 20px;font-size:24px;color:#333;text-align:center}h2{margin:0 0 16px;font-size:18px;color:#333}h3{margin:0 0 12px;font-size:16px;color:#333}label{display:block;margin-bottom:4px;font-weight:500;color:#555}input[type=text],input[type=password]{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:16px;margin-bottom:12px}input:focus{outline:none;border-color:#007bff}.input-full{width:100%}button{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;font-size:16px;cursor:pointer}button:hover{background:#0056b3}button:disabled{background:#ccc;cursor:not-allowed}.btn-primary{background:#007bff}.btn-primary:hover{background:#0056b3}.btn-block{width:100%;display:block}.btn-secondary{background:#6c757d}.btn-secondary:hover{background:#545b62}.btn-danger{background:#dc3545;padding:6px 12px;font-size:14px}.btn-danger:hover{background:#c82333}.btn-small{padding:4px 8px;font-size:12px}.error{color:#dc3545;margin:10px 0;font-size:14px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #eee}.header span{font-size:14px;color:#666}.status{font-size:14px;color:#666;margin-bottom:16px;padding:8px 12px;background:#f8f9fa;border-radius:4px}.status.connected{color:#28a745;background:#d4edda}.status.error{color:#dc3545;background:#f8d7da}.section{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #eee}.section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.section form{display:flex;flex-direction:column;gap:10px}.section form input{margin-bottom:0}.section form button{align-self:flex-start}.todo-list{list-style:none;padding:0;margin:0 0 16px}.todo-item{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid #eee;gap:12px}.todo-item:last-child{border-bottom:none}.todo-item.empty{color:#999;font-style:italic}.todo-item input[type=checkbox]{width:20px;height:20px;cursor:pointer}.todo-item .todo-text{flex:1;font-size:16px}.todo-item.done .todo-text{text-decoration:line-through;color:#999}.add-form{display:flex;gap:10px;margin-bottom:16px}.add-form input{flex:1;margin-bottom:0}.doc-info{font-size:12px;color:#999;margin-top:16px;padding-top:16px;border-top:1px solid #eee;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.doc-url{flex:1 1 100%;word-break:break-all;margin-bottom:4px;font-family:monospace}.recent-list{list-style:none;padding:0;margin:0}.recent-list li{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eee;gap:8px}.recent-list li:last-child{border-bottom:none}.doc-id{font-family:monospace;font-size:12px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.login-form{display:flex;flex-direction:column}.login-form [data-login-field=username],.login-form [data-login-field=password]{margin-bottom:16px}.login-form [data-login-field=error]{color:#dc3545;margin-bottom:12px;font-size:14px}.login-form [data-login-field=submit]{align-self:stretch}
